【发布时间】:2021-12-15 17:20:34
【问题描述】:
我对 Flutter 比较陌生。我正在尝试使用 Flutter HTTP 包(以及标头和正文)进行 API 调用
例如,我如何在 Flutter HTTP 中进行相同的调用?
curl --location --request POST 'xyz.com' \
--header 'Referer: {{your app package name or website url}}' \
--header 'API-KEY: {{api-key}}' \
--data-urlencode 'vehicleId=MHxxxxxxxx' // how to pass this in http body
这是我到目前为止可以做的,到目前为止我做对了吗?如何传递正文内容?
Map<String, String> headers = {"Referer": "abcd.com", "API-KEY": "abcd12345"};
var url = Uri.parse('xyz.com');
var response = await post(url, headers: headers);
【问题讨论】:
-
Future<http.Response> createAlbum(String title) { return http.post( Uri.parse('https://jsonplaceholder.typicode.com/albums'), headers: <String, String>{ 'Content-Type': 'application/json; charset=UTF-8', }, body: jsonEncode(<String, String>{ 'title': title, }), ); } -
await post(url, headers: headers, body: {'vehicleid': 'MHxxxxxx'});这是你想要的吗?抱歉,对 Curl 不太熟悉。我不知道--data-urlencode做了什么 -
https://docs.flutter.dev/cookbook/networking/send-data -
这里也一样!这让我感到困惑(--data-urlencode),API 示例响应是由 API 提供者提供给我的,所以我不确定这是否是正确的方法 body: {'vehicleid': 'MHxxxxxx '}) @h8moss
-
你可能会说你为什么不测试它但是API提供者在我将它集成到我的应用程序之前不会授权我对API数据的授权,所以无法测试它@h8moss
标签: flutter flutter-http