我想在以后的类中使用需要标头,正文和参数的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
}
);
有人可以帮忙吗
答案 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.
});