【发布时间】:2021-01-27 14:42:57
【问题描述】:
我正在使用 Flutter 1.20.4、http 0.12.2 包,我遇到了一个问题,即我的 HTTP 调用在 Postman 中成功但在颤振中失败。我遇到了许多关于小写 HTTP 标头和一些旧服务器的问题的文章。我没有这个问题,因为我用小写测试过邮递员。我在 jwt.io 上检查了我的不记名令牌,并且颁发者与我正在使用的域匹配。任何使用授权的 Flutter 调用都将返回“未通过身份验证”,因此它会出现 HTTP 302(重定向到身份提供者登录)。有什么想法吗?
我的代码如下所示:
import 'package:http/http.dart' as http;
...
var getProfileUrl = _identityApi + '/api/profile/get'; // TODO: CHANGE THIS
var accessToken = await _secureStorage.read(key: 'bearerToken');
var response = await http.get(getProfileUrl, headers: {
HttpHeaders.contentTypeHeader: 'application/json',
HttpHeaders.acceptHeader: 'application/json',
HttpHeaders.authorizationHeader: 'Bearer $accessToken'
});
【问题讨论】:
-
会不会是你的后端区分大小写?在邮递员中你写了
bearer,而在颤振中它是Bearerlol -
@magicleon94 不,我试过了,它不区分大小写,你可以同时使用 "Bearer" 或 "bearer" 它仍然可以在使用邮递员的服务器上工作
标签: flutter dart asp.net-web-api authorization postman