我目前正在使用dart与ASP.NET核心网络api通信。我可以做一个简单的获取,但无法用附着在身体上的物体来做。我可以在PostMan中做到这一点。
这是我可以在Postman工作的一个简单示例。它会调用适当的入口点并返回正确的数据。
Postman
GET: https://localhost:44389/api/people/param
BODY: RAW: { "age": "100" }
HEADERS(1): Content-Type:application/json
飞镖示例
var vBody = json.encode(param.toJson()); // '{ "age": "100" }'
var vUri = Uri.https(WebConfig.serverAddress, '/api/people/param').toString();
var vMethod = 'GET';
var vHeaders = { 'Content-Type': 'application/json' };
print("vMethod: $vMethod");
print("vUri: $vUri");
print("vBody: $vBody");
print("vHeaders: $vHeaders");
await HttpRequest.request(
vUri,
method: vMethod,
sendData: vBody,
requestHeaders: vHeaders,
).then((resp) {
print(resp.responseText);
}).catchError((Object error) {
print(error.toString());
});
飞镖返回400(错误请求)。我一直盯着这个看了好几个小时。不知道为什么它不起作用。 dart可能会将主体传递给GET方法时遇到问题。
任何帮助将不胜感激。