我的flutter项目中有http包。我想发送带有自定义标头的发布请求。这是我的代码片段。它将明确我使用 http 进行自定义标头的问题。它总是运行 else 语句,这意味着响应类型不是 200,并且它给我提供了无效令牌的错误。但在邮递员上,效果很好
Map data = {
'user_fullname': _name,
'user_address': _address,
'user_mobile': _phone,
};
var tokenData = {
'User_token': token,
'Content-Type': 'application/x-www-form-urlencoded'
};
final response = await http.post(url, body: data, headers: tokenData);
if (response.statusCode == 200) {
print(response.body);
} else {
print(response.body);
}
Run Code Online (Sandbox Code Playgroud)
小智 0
在你的情况下必须使用 try...catch 异常。
并且您可以参考下面的一篇。
import 'package:http/http.dart' as http;
Run Code Online (Sandbox Code Playgroud)
而http请求是...
var client = new http.Client();
try{
var response = await client.post(
"Your Url",
headers: {"User_token" : token /*, ...etc*/},
body : {
'user_fullname': _name,
'user_address': _address,
'user_mobile': _phone,
}
);
if(response.statusCode == 200 || response.statusCode == 201){
//enter your code
}
} on Exception catch (err){
print("Error : $err");
}
Run Code Online (Sandbox Code Playgroud)
我希望对你有帮助。
归档时间: |
|
查看次数: |
6959 次 |
最近记录: |