我正在构建一个Flutter应用程序,该应用程序需要我正在使用的第三方服务之一的oauth 1授权。由于flutter oauth 1软件包受到限制,因此我决定使用npm提供的oauth 1软件包。这是用于从站点访问用户生成的访问令牌的代码。
我以前使用请求来首先调用api端点,以访问令牌,其次使用接收到的令牌来再次调用另一个资源端点
我如何使用axios发出相同的请求,强调每个请求都需要在标头中使用hmac-sha1签名的事实。
谢谢。
consumer: {
key: CONSUMER KEY,
secret: CONSUMER SECRET,
},
signature_method: 'HMAC-SHA1',
hash_function(base_string, key) {
return crypto
.createHmac('sha1', key)
.update(base_string)
.digest('base64')
},
})
const request_data = {
url: 'https://www.instapaper.com/api/1/oauth/access_token/',
method: 'POST',
data: { x_auth_username : USERNAME , x_auth_password : PASSWORD , x_auth_mode : 'client_auth' },
}
request(
{
url: request_data.url,
form: request_data.data,
method: request_data.method,
headers: oauth.toHeader(oauth.authorize(request_data)),
},
function(error, response, body) {
// Process your data here
console.log(error);
console.log(response);
console.log(body);
}
)
最后找到此链接的答案,该链接指向在github上创建的问题