Rest http使用application/json内容类型发布映射对象

Rest http使用application/json内容类型发布映射对象,rest,dart,Rest,Dart,我在尝试使用“package:http/http.dart”pub包将一些JSON数据发布到web服务时遇到了一个问题。我已正确格式化了数据(通过使用高级REST客户端扩展插件发布Chrome来确认),唯一的区别是内容类型被强制为错误的类型(web服务仅接受)应用程序/json”): 如果body是一个映射,则使用编码将其编码为表单字段。请求的内容类型将设置为“application/x-www-form-urlencoded”;这不能被覆盖 文件建议: 要对请求进行更细粒度的控制,请改用req

我在尝试使用“package:http/http.dart”pub包将一些JSON数据发布到web服务时遇到了一个问题。我已正确格式化了数据(通过使用高级REST客户端扩展插件发布Chrome来确认),唯一的区别是内容类型被强制为错误的类型(web服务仅接受)应用程序/json”):

如果body是一个映射,则使用编码将其编码为表单字段。请求的内容类型将设置为“application/x-www-form-urlencoded”;这不能被覆盖

文件建议:

要对请求进行更细粒度的控制,请改用request或StreamdRequest

有没有使用其中任何一个到HTTP POST的示例,以及主体和内容类型“application/json”的映射?我被卡住了…

您可以在客户端使用:

HttpRequest.request(url,方法:“POST”,
requestHeaders:{'Content-Type':'application/json;charset=utf-8'},
sendData:“{a:1}”)。然后((r)=>;
在服务器端:

导入'dart:convert';
导入“dart:io”;
main(){
HttpClient=新的HttpClient();
postrl(Uri.parse(“…”)。然后((HttpClientRequest请求){
add('Content-Type','application/json;charset=utf-8');
写(“{a:1}”);
返回请求。close();
}).然后((HttpClientResponse响应){
UTF8。解码流(响应)。然后(打印);
});
}

dart:html在独立的VMIt上不可用您的问题中没有提到:)