如何在以后的课程中发送参数

时间:2019-04-05 15:10:58

标签: api http parameters dart flutter

我想在以后的类中使用需要标头,正文和参数的Web服务 但问题是显示错误“未定义命名参数”

Future<http.Response> postLogin(String login, String password, String jwt) async{

  final response = await http.post(Uri.encodeFull('$baseurl/mobile/login'),

    headers: {
      HttpHeaders.acceptHeader: 'application/json ; charset=utf-8',
      HttpHeaders.contentTypeHeader:'application/x-www-form-urlencoded',
      HttpHeaders.authorizationHeader :'Bearer $jwt',
    },

    body: bodyLoginToJson(login, password, token),
    parameters: {
    token, login
    }
  );

有人可以帮忙吗

1 个答案:

答案 0 :(得分:0)

如@jamesdlin所述,parameters不是http类的命名参数。使用飞镖/颤动发布值的标准方法是过去body参数的映射。不要假设邮递员使用的术语在dart中是相同的。

    Map<String, String> _headers = {
      "Accept":"application/json"
    };
    var response = await http.post(LOGIN_URL, headers: _headers, body: {
      "username": username,
      "password": password,
      // whatever other key values you want to post.
    }).then((dynamic res) {
      // ... Do something with the result.
    });