http - 如何使用颤振授权 OAUth 2.0 API (fatsecret)
问题描述
我想对 fatsecret 服务进行授权并获得令牌。我尝试遵循https://platform.fatsecret.com/api/Default.aspx?screen=rapiauth2上的文档并在颤振中重写给定的 curl 代码,但我无法让它工作。
我已经尝试过不同类型的请求(post、get),我尝试将授权放入 url 并尝试了不同的编码。不幸的是,什么都没有改变。这是我最后一次尝试:
static void _authorizeClient() async {
Map<String, String> params = {
'grant_type': 'client_credentials',
'scope': 'basic',
};
Map<String, String> headers = {
HttpHeaders.contentTypeHeader: 'application/json',
HttpHeaders.authorizationHeader:
'Basic ' + base64Encode(utf8.encode(clientId + ':' + clientSecret))
};
http.Response response = await http.post(
Uri.https('oauth.fatsecret.com', 'connect/token', params),
headers: headers);
final responseJson = json.decode(response.body);
}
当我在他们的网站上运行 curl 代码时,我得到了一个没有问题的令牌,但是我的代码不起作用,我总是收到一个 400 - 错误的请求。
解决方案
推荐阅读
- interface - gfortan 模糊接口的问题
- javascript - 具有自定义(动态)条件的 fizzbuzz 问题
- javascript - JS中的否定运算符
- quarkus - 使用响应式消息传递时如何传播 JTA 状态?
- ios - swift - 快速点击tabBar时如何显示不同的ViewController
- react-native - React Native 将参数从 Screen 传递到 Tab Navigator
- apache-spark - 如何使用 Pyspark 从 mongodb 中仅提取特定行?
- javascript - 桌面通知仅适用于 Chrome 浏览器?
- arrays - “字符串”类型上不存在属性“地图”
- java - 如何使用 Java 从 Firebase 实时数据库中删除数据?