Flutter 发送 post 请求返回 http 错误 500

时间:2021-01-19 18:56:43

标签: json flutter http

我一直在从事接受用户姓名和电话号码的 flutter 项目,但是当我保存它时,它显示响应 500,但从邮递员那里它工作正常。 enter image description here

但是这里是flutter的代码

void RegisterUsers(String names, String phone) async{
  
        String urlInser = "https://hmmmiii.com/api/addUser";
        Map<String, String> headers = {
          'Content-Type': 'application/json',
          //'Accept': 'application/json',

        };
    final msg = jsonEncode({"Name":"$names","PhoneNumber":"$phone"});

    var response = await http.post(urlInser,
        headers: headers,
        body: msg);
    print(response.statusCode);


    if (response.statusCode == 200) {
      print('User Registered');
     


    } else {
      print('Unsuccessful');
      

      
    }

姓名和电话是 textController 值谢谢。

1 个答案:

答案 0 :(得分:1)

在邮递员中,您将请求作为表单数据发送,但在您的代码中,您将其作为简单的 JSON 发送。

您必须改用 MultipartRequest


final url = 'your url';
final request = http.MultipartRequest('POST', Uri.parse(url))
      ..fields['Name'] = 'some name'
      ..fields['PhoneNumber'] = 'some phonenumber';

final response = await request.send();
final responseBody = await response.stream.bytesToString();
print('RESPONSE BODY:   $responseBody');