给出以下伪代码:
import "dart:html";
HttpRequest.postFormData(url, data).then((HttpRequest request) {
...
}).catchError((error) {
// How do I get the response text from here?
});
如果网络服务器回复400 BAD REQUEST
,则会调用catchError
。但是,错误参数属于_XMLHttpRequestProgressEvent
类型,显然在Dart的库中不存在。
那么,如何从Web服务器发送的400 BAD REQUEST
响应中获取响应文本?
答案 0 :(得分:6)
您的错误对象中的目标实际上就是您的HttpRequest。
您可能会发现此链接很有用:https://www.dartlang.org/docs/tutorials/forms/#handling-post-requests
您可以执行以下操作:
import "dart:html";
HttpRequest.postFormData(url, data).then((HttpRequest request) {
request.onReadyStateChange.listen((response) => /* do sth with response */);
}).catchError((error) {
print(error.target.responseText); // Current target should be you HttpRequest
});