如何在飞镖的 API POST 调用中传递授权标头?
Posted
技术标签:
【中文标题】如何在飞镖的 API POST 调用中传递授权标头?【英文标题】:How to pass Authorization header in API POST call in dart? 【发布时间】:2021-04-02 02:31:29 【问题描述】:我正在使用颤振应用程序,我想知道我们如何在 POST 请求中传递授权标头。这是我尝试过的代码。我需要帮助才能知道如何以正确的方式做到这一点。
Future<String> addCartItemToDb(String userId) async
try
final res = await http.post(
_baseURL,
headers:
"Content-Type": "application/json",
"accept": "*/*",
"Authorization": "token"
,
body: jsonEncode("userId": userID)
);
return _response(res);
on SocketException
throw CustomException("No internet Connection");
on FormatException
throw CustomException("Bad Response format !");
此外,我想知道我们如何解码 token
我在标头中传递的 userid
给那个已经登录的用户。
【问题讨论】:
这对您没有帮助吗? flutter.dev/docs/cookbook/networking/authenticated-requests 这能回答你的问题吗? How to pass headers in the HTTP post request in Flutter? 【参考方案1】:final uri = Strings.base_url_api+Strings.nearby_cons;
var requestBody =
"organization_id": _orgID.toString()
;
http.Response response = await http.post(uri,
headers: <String, String>
'Content-Type': 'application/json',
'Authorization': 'Bearer $_auth'
,
body: requestBody,
);
if (response.statusCode == 200)
var responseJson = json.decode(response.body);
print(responseJson);
else
print('Status code error.. Check your API method or URL.. ');
【讨论】:
【参考方案2】:final jobsListAPIUrl = constants.BASE_URL+'bookings/retail/0/20/?status='+constants.BOOKING_CONFIRM_KEY+'&filter=0'; 打印(作业列表APIUrl); var response = await http.get(jobsListAPIUrl,headers: 'Authorization':'Token'+widget.token); 打印(response.body);
【讨论】:
以上是关于如何在飞镖的 API POST 调用中传递授权标头?的主要内容,如果未能解决你的问题,请参考以下文章