如何在Node中发送OAuth请求

我想访问node.js中的WS REST API。 我有oauth_consumer_keyoauth_token以及API端点。 oauth_signature_method是HMAC-SHA1。

如何在Node中发送OAuth请求?

有没有一个模块/库来生成请求标头? 我期望的是一个function,如:

 var httprequest = createRequest(url, method, consumer_key, token); 

  • 更新10/14/2012。 添加解决scheme。

我使用下面的代码。

 var OAuth = require('oauth').OAuth; consumer = new OAuth('http://term.ie/oauth/example/request_token.php', 'http://term.ie/oauth/example/access_token.php', 'key', 'secret', '1.0', null, 'HMAC-SHA1'); // Get the request token consumer.getOAuthRequestToken(function(err, oauth_token, oauth_token_secret, results ){ console.log('==>Get the request token'); console.log(arguments); }); // Get the authorized access_token with the un-authorized one. consumer.getOAuthAccessToken('requestkey', 'requestsecret', function (err, oauth_token, oauth_token_secret, results){ console.log('==>Get the access token'); console.log(arguments); }); // Access the protected resource with access token var url='http://term.ie/oauth/example/echo_api.php?method=foo&bar=baz'; consumer.get(url,'accesskey', 'accesssecret', function (err, data, response){ console.log('==>Access the protected resource with access token'); console.log(err); console.log(data); }); 

这更像是一个完整的节点twitter包,似乎简化和有用。 https://npmjs.org/package/twitter