调用Twitter OAuth2 API获取令牌时遇400或503错误求助
问题:获取Twitter OAuth2仅应用Bearer令牌时遭遇400/503错误
我最近在尝试从Twitter OAuth2 API获取仅应用(App-Only)Bearer令牌时卡壳了——不同实现方式分别返回400(错误请求)或503(服务暂时不可用)错误,实在摸不着头脑。
尝试1:自定义SSL套接字请求
最开始用Xojo的HTTPS套接字请求失败后,我换成了原生SSL套接字来明确控制请求内容,请求详情如下(凭证部分已省略):
POST /oauth2/token HTTP/1.1 Host: api.twitter.com User-Agent: My Twitter App v1.0.23 Authorization: Basic MUs1NGpvd (...stuff deleted...) MmpxeQ== Content-Type: application/x-www-form-urlencoded;charset=UTF-8 Content-length: 29 Accept-Encoding: gzip grant_type=client_credentials
这个请求完全是照着官方文档的要求写的,但就是返回400错误。
尝试2:curl命令测试
不死心的我又改用curl命令来测试(凭证已省略):
curl -i -d 'grant_type=client_credentials' -H 'Authorization: Basic MUs1NGpv (...blah blah...) mpxeQ==' -H 'Content-Type: application/x-www-form-urlencoded;charset=UTF-8' 'https://api.twitter.com/oauth2/token'
结果更糟,每次执行都返回503错误。
补充一下:我的凭证是把API密钥和密钥秘钥用冒号连接后做Base64编码得到的,而且同一套凭证在STTwitterDemoOSX里是可以正常使用的。我甚至都想掏WireShark抓包分析了,但总觉得应该是漏掉了某个简单的细节,有没有大佬能给我指条明路?
内容的提问来源于stack exchange,提问作者Joe Strout
相关产品推荐
相关产品推荐

