我正在尝试使用针对React Native中ES6的Fetch API的https://api.twitter.com/oauth/request_token的POST请求从Twitter的API获取令牌。
这是我的代码:
fetch('https://api.twitter.com/oauth/request_token', {
method: 'POST',
headers: {
Oauth: {
oauth_callback: 'reactnativechirp://callback',
oauth_consumer_key: keys.consumerKey,
oauth_nonce: nonce,
oauth_signature: 'Pc%2BMLdv028fxCErFyi8KXFM%2BddU%3D',
oauth_signature_method: 'HMAC-SHA1',
oauth_timestamp: epoch,
oauth_version: '1.0'
}
}
})
.then((res) => res.json())
.then((json) => {
console.log(json);
})
oauth_nonce设置为nonce变量,我将其作为随机的二十个字符串生成。
使用new Date().getTime()
此请求正在componentDidMount()
中生成,我收到一个错误对象,其中code: 215, message: 'Bad Authentication data.
我做错了什么?
答案 0 :(得分:0)
我认为你正在使用旧的twitter api。您可以使用https://github.com/BoyCook/TwitterJSClient和https://github.com/aivis/user-stream库来验证和使用twitter api 如果没有,您还可以了解oauth如何使用最新的Twitter API版本1.1 here