【发布时间】:2021-05-30 11:07:20
【问题描述】:
我正在尝试对我的服务器进行 POST 调用,要求我的数据形状如下:
{
"dispensary": 1,
"order_detail": [
{"product_size": 1,
"quantity": 1}
]
}
但是当我进行 api 调用时,我在后端收到 500 错误,说数据看起来像这样:
{'{"dispensary":1,"order_detail":{"product_size":1,"quantity":1}}': ['']}
我是这样打电话的:
Future getdata(dispensary, order) async {
SharedPreferences prefs = await SharedPreferences.getInstance();
var token = prefs.getString('token');
var url = '$server/api/customer/order/getdata/?access_token=$token';
Map<String, dynamic> orderRating = {
'dispensary': dispensary,
'order_detail': order
};
await http.post(url, body: orderRating, headers: {
"Content-Type": "application/x-www-form-urlencoded"
}).then((http.Response response) {
switch (response.statusCode) {
case (200):
var responseData = json.decode(response.body);
Rate rateData =
Rate.fromJson((responseData[1]['rate_response']['rates']));
print('uploaded successfully');
print(rateData.carrierId);
break;
case (400):
print('Bad Data');
break;
case (500):
print('Failed Upload');
isUploaded = false;
break;
default:
print('Unable to get rates');
}
});
print('uploaded successfully');
}
order_detail 是 {"product_size": 1 的映射, “数量”:1}。
我无法完成对我的服务器的调用。你能告诉我我做错了什么吗
【问题讨论】:
-
您好,我认为服务器中存在错误。尝试不编码发送数据
-
我没有成功
-
你能提供 url + token 在我这边测试吗