xml - 如何在rest API Flutter中发布/发送XML数据而不是JSON?
问题描述
我想用 Flutter 在 Rest API 中发送/发布数据。但我找不到任何关于如何使用 Flutter 发送 XML 文件的解决方案。
I need to send this data in post API
<?xml version="1.0" encoding="UTF-8"?>
<Request StartDate="2020-07-05" EndDate="2020-07-05" ServiceID="0">
</Request>
下面给出了我的代码,我尝试使用颤振
Future<HttpClientResponse> _send() async {
var builder = new xml.XmlBuilder();
builder.processing('xml', 'version="1.0" encoding="iso-8859-9"');
builder.element('Request', nest: () {
builder.attribute('StartDate', '2020-06-02');
builder.attribute('EndDate', '2020-07-02');
builder.attribute('ServiceID', '0');
});
var bookshelfXml = builder.build();
String _uriMsj = bookshelfXml.toString();
String _uri = "https://my_url";
var _responseOtp = post(_uri, _uriMsj);
print("_responseOtp: $_responseOtp");
}
//**POST XML:**
Future<String> post(String _uri, String _message) async {
HttpClient client = new HttpClient();
HttpClientRequest request = await client.postUrl(Uri.parse(_uri));
request.write(_message);
HttpClientResponse response = await request.close();
StringBuffer _buffer = new StringBuffer();
await for(String a in await response.transform(utf8.decoder)) {
_buffer.write(a);
}
print("_buffer.toString: ${_buffer.toString()}");
return _buffer.toString();
}
它返回这个响应
_responseOtp: Instance of 'Future<String>'
I/flutter ( 9755): _buffer.toString: <?xml version="1.0" encoding="UTF-8"
standalone="yes"?>
I/flutter ( 9755): <Response type="service-response">
I/flutter ( 9755): <ResponseCode>1020</ResponseCode>
I/flutter ( 9755): <ResponseStatus>error</ResponseStatus>
I/flutter ( 9755): <ResponseMessage>Requête invalide</ResponseMessage>
I/flutter ( 9755): </Response>
- 该数据与邮递员配合得很好
解决方案
您需要正常调用..只需更改标题即可。
'Content-type' : 'text/xml',
像这样打电话
return await http.post(
fullUrl,
body:data, // data is your normal json data as a string,
headers: {
'Content-type' : 'text/xml',
}
);
确保使用 async 和 await 来正确获得结果。
推荐阅读
- c - 在 c 的结构中初始化 int 类型的灵活数组时出错
- python - python中的矩阵匹配
- amazon-web-services - 如何让 Alexa Skill 到达内部网络设备
- javascript - 这是内存泄漏还是高内存使用 JS 应用程序?
- excel - VBA:在包含重复条目的列中搜索并选择最后找到的字符串
- algorithm - 关于分配,动态规划。让我的代码更有效率?
- stata - 转置变量
- javascript - npm install 错误包含在开发和生产依赖项中
- python - 将随机 True 或 False 附加到 Python 中每一行的末尾
- ios - 在 AlamofireObjectMapper 响应中映射 allHeaderFields