1 回答

TA貢獻(xiàn)1827條經(jīng)驗(yàn) 獲得超9個(gè)贊
您對(duì)上下文的理解不正確。
上下文(在某種程度上簡(jiǎn)化并參考NewRequestWithContext
API)只是一個(gè)內(nèi)存中的對(duì)象,您可以使用它來控制請(qǐng)求的生命周期(處理/觸發(fā)取消)。
但是,您的代碼正在進(jìn)行 HTTP 調(diào)用,該調(diào)用使用 HTTP 協(xié)議通過線路(編組)。該協(xié)議不理解 golang 的上下文或其值。在您的場(chǎng)景中,兩者/tasks/str
都/tasks/solution
在同一臺(tái)服務(wù)器上運(yùn)行。如果它們位于不同的服務(wù)器上怎么辦,可能還有不同的語言和應(yīng)用程序服務(wù)器,所以上下文不能被發(fā)送。
由于 API 在同一臺(tái)服務(wù)器中,也許您可以避免進(jìn)行完整的 HTTP 調(diào)用,而直接調(diào)用 API/方法。它也可能會(huì)變得更快。
如果您仍想從上下文發(fā)送附加值,那么您將不得不利用其他屬性(如 HTTP 標(biāo)頭、參數(shù)、正文)來發(fā)送所需的信息。這可以提供有關(guān)如何通過 HTTP 從上下文序列化數(shù)據(jù)的更多信息。
- 1 回答
- 0 關(guān)注
- 293 瀏覽
添加回答
舉報(bào)