0
我可能在 Dart 的 POST 方法中的引數 ContentType 有問題。我正在嘗試進行 API 呼叫以更改正文中expires_in的值(默認值:3600)。但似乎 Android無法從 headers 讀取 Content Type,因為當我在 Postman 中停用 ContentType 標頭時,我在 Android Studio 和 Postman 中的結果相同。當此標頭在 Postman 中處于活動狀態時,它會正確回傳 expires_in 更改的值。哪里可能出錯?在傳遞標題?
飛鏢代碼:
Future<http.Response> getPrivateKeyResponse(Uri url) async {
var customerKey = "***";
var customerSecret = "***";
var encode = base64Encode(utf8.encode("$customerKey:$customerSecret"));
return await http.post(
Uri.parse('https://api.dolby.io/v1/auth/token'),
headers: <String, String>{
"Authorization":"Basic $encode",
"Content-Type": "application/x-www-form-urlencoded"
},
body: jsonEncode(<String, dynamic>{
"grant_type":"client_credentials",
"expires_in":7200
}),
);
}
Postman 結果的螢屏截圖,將值更改為 7200 并帶有活動的 ContentType 標頭(正確的結果):

來自 Postman 結果的螢屏截圖,其值更改為 7200,且 ContentType 標頭處于非活動狀態(錯誤結果):

并且對于不活動的 ContentType 標頭,它回傳與 Android Studio 相同的結果,上面的代碼(錯誤結果):

所以它讓我想到在標題中傳遞這個 ContentType 不能正常作業。你有什么建議嗎?或者可能是 Dart 方面的代碼錯誤?
uj5u.com熱心網友回復:
您可以檢查郵遞員,為您提供在 dart 中生成相同作業請求的確切代碼。有一個代碼按鈕(可能在右上角)可以向您顯示不同語言的代碼,選擇 dart 并檢查您是否缺少任何內容。

轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/511392.html
標籤:安卓扑镖邮政标题
