Rba*_*bar 5 oauth node.js firebase
有没有一种标准化的方法可以oauth_signature在 NodeJS 中为 OAuth 1.0a生成一个?
尝试 1 (+?)
在Intuit 的文档(这是我需要签名的内容)中,声明oauth_signature需要获取 OAuth 请求令牌:
oauth_signature 您的应用程序为每个请求生成的唯一字符串。不要尝试手动生成此值,而是根据您的语言使用多个OAuth 社区资源之一。
这些OAuth 社区资源为 NodeJS 列出了以下内容:
我查看了每个资源,但似乎每个资源都用于 OAuth2.0(不是 OAuth 1.0a)并且没有明确的方法来生成oauth-signature(尽管希望我在这里遗漏了一些东西)。
尝试 2
我找到了一个npm 项目,用于生成oauth_signature并尝试按照文档的说明实施和测试它:
var httpMethod = 'GET',
url = 'http://photos.example.net/photos',
parameters = {
oauth_consumer_key : 'dpf43f3p2l4k3l03',
oauth_token : 'nnch734d00sl2jdk',
oauth_nonce : 'kllo9940pd9333jh',
oauth_timestamp : '1191242096',
oauth_signature_method : 'HMAC-SHA1',
oauth_version : '1.0',
file : 'vacation.jpg',
size : 'original'
},
consumerSecret = 'kd94hf93k423kf44',
tokenSecret = 'pfkkdhi9sl3r4s00',
// generates a RFC 3986 encoded, BASE64 encoded HMAC-SHA1 hash
encodedSignature = oauthSignature.generate(httpMethod, url, parameters, consumerSecret, tokenSecret),
// generates a BASE64 encode HMAC-SHA1 hash
signature = oauthSignature.generate(httpMethod, url, parameters, consumerSecret, tokenSecret,
{ encodeSignature: false});
Run Code Online (Sandbox Code Playgroud)
但是,这不起作用,我还注意到包的Dependency Status 为Insecure。根据进一步挖掘,其依赖项存在安全漏洞,这让我觉得我根本不应该使用它。
任何关于如何为 OAuth 1.0a 生成 oauth_signature 的方向都将不胜感激。在此先感谢您的任何建议。