dart flutter 中使用自定义 Body 进行 API 调用

问题描述 投票:0回答:1

我尝试使用自定义 Body 调用 API,但总是出现相同的错误。 错误400 API 返回“无法 json/yaml 解码参数”

import 'dart:convert';
import 'package:http/http.dart' as http;
import 'dart:developer' as developer;
Future\<dynamic\> ApiDiolos() async {
final mapHeader = {
'Accept': 'application/json',
'Content-Type': 'application/json',
'X-Diolos-Key':
'My-Custom-API-Key'
};
Uri uri = Uri.parse("https://api.diolos.com/myapipage.php");
var customBody = {};
customBody\["action"\] = "6";
customBody\["limit"\] = "null";
customBody\["offset"\] = "0";
final response = await http.post(uri,
headers: mapHeader,
body: json.encode(customBody.toString()),
encoding: Encoding.getByName('utf-8'));
}
void main() {
ApiDiolos();
}

返回此命令的调试

邮递员一切正常。 我希望你能帮助自己解决这个问题。 谢谢 祝你有美好的一天

flutter api dart
1个回答
0
投票

直接传递map变量进行编码:

来自

body: json.encode(customBody.toString()),

body: json.encode(customBody),
© www.soinside.com 2019 - 2024. All rights reserved.