如何使用 oauth 1.0 签署访问令牌请求

How do I sign access token request withings oauth 1.0

我目前正致力于通过网络连接 Withings api,并且已经能够自动获取令牌密码并从 auth 内的回调函数中获取 userId,但是在尝试实施第 3 步时(生成令牌) 我总是得到签名错误。这是基本逻辑,请尽可能提供帮助。

  nonce = getNonce(32);
  date = Math.round((new Date()).getTime() / 1000.0);
      var requestSig = oauthSign.hmacsign(
        'GET',
        'https://oauth.withings.com/account/access_token',
        {oauth_consumer_key: <myconsumerkey>,
          oauth_nonce: nonce,
          oauth_signature_method: 'HMAC-SHA1',
          oauth_timestamp: date.toString(),
          oauth_token: oauth_token,
          oauth_version: '1.0'
        }, newSecret);
      var hey = encodeURIComponent(requestSig);
      var permanentTokensLink = "https://oauth.withings.com/account/access_token?oauth_consumer_key=<myconsumerkey>&oauth_nonce="+nonce+"&oauth_signature="+hey+"&oauth_signature_method=HMAC-SHA1&oauth_timestamp="+date+"&oauth_token="+oauth_token+"&oauth_version=1.0";
      return {link:permanentTokensLink, newSecret: newSecret, tokensecret: oauth_token_secret, dataObj: dataObj, token: oauth_token};

newSecrect 是一个 consumersercret&tokensecret,permanentTokensLink 是我应该可以单击以获取访问密钥和秘密的地方。为什么这不起作用?

我在签名参数和我正在创建的 link 中缺少一个 oauth 验证器,秘密应该被分成两部分(消费者秘密,令牌秘密)以供使用通过 npm 包 hmacsign 正确。