当我查询Postman时,我得到一个状态为200并且正文正确的响应,但是在我的代码中,我得到一个404响应。服务器不是我的,它是我国一家知名银行,所以服务器应该能正常工作。我不明白为什么我的代码是404。我确信我在Postman和Flutter代码中写的是相同的数据。
我试过使用HTTP包,但同样的错误。
我的Flutter代码:
Future<void> getOrders() async {
var dio = Dio();
var url =
'https://kaspi.kz/shop/api/v2/orders?filter[orders][code]=274556253';
try {
var response = await dio.get(
url,
options: Options(
headers: {
'Content-Type': 'application/vnd.api+json',
'X-Auth-Token': '<my token (i have correct token!)>',
},
),
);
if (response.statusCode == 200) {
print('Response data: ${response.data}');
} else {
print('Request failed with status: ${response.statusCode}.');
}
} catch (e) {
print('Error: $e');
}
}
字符串
为了让所有的标题和参数都正确,我从Postman那里获取了代码:
2条答案
按热度按时间kx1ctssn1#
在我的例子中,我没有添加额外的header
User-Agent
。某些服务器要求在请求中设置该标头。您可以尝试在请求中添加一个User-Agent
标头并将其设置为有效值。ndh0cuux2#
我发现了问题所在。错误是Postman添加了**'Accept':“/”,但我没有添加它,我不知道它是什么意思。