尝试在Flutter中执行HTTP Post请求时出错

时间:2020-01-11 19:43:27

标签: flutter dart dart-http

我正在尝试执行一个曾经可用的HTTP Post请求,但是突然之间(我想进行一些更新)它不再起作用了。这是函数:

Future<int> postQuestion(User userOwner, User userAsked, String questionText, int qoinsTotal, int votes) async {
var dateAndTime = new DateTime.now().toUtc();
Map<String, String> headers = {"Content-type": "application/json", "Authorization": "Bearer $_token"};
String jsonDoc = '{"UserOwner": "${userOwner.username}", "UserAsked": "${userAsked.username}", "UserAskedId": ${userAsked.userId}, '
            '"QuestionText": "$questionText", "QoinsTotal": $qoinsTotal, "Votes": $votes, "DateAndTime": "$dateAndTime"}';

var uriResponse = await this.client.post(_baseURLAPI+"question/${userOwner.userId}", headers: headers, body: jsonDoc);
return uriResponse.statusCode; //It must be 201

}

我收到以下错误: [ERROR:flutter / lib / ui / ui_dart_state.cc(157)]未处理的异常:类型'(HttpException)=> Null'不是类型'(dynamic)=> dynamic'

的子类型

问题在于请求通过了(与之通信的API接收到该请求并执行了应做的事情),所以我不确定为什么会出现错误。

我不知道该怎么办,我真的迷路了。

谢谢。

1 个答案:

答案 0 :(得分:0)

我已经解决了这个问题。问题是返回的json文档不正确(因此是错误,因为实际上它收到了不正确的json文档,即json文档未以'}'结尾)。