【问题标题】:OAuth - incorrect signatureOAuth - 不正确的签名
【发布时间】:2014-09-20 19:06:09
【问题描述】:

我正在使用https://developer.linkedin.com/oauth-test-console 来确定我收到401 unauthorised 消息的原因。

由于某种原因,我的代码中生成的签名与此控制台上生成的签名不同。出于测试目的,代码中的noncetimestampbaseString 与控制台中使用的值相同。然而签名仍然不匹配?

我正在使用以下代码生成签名:

HMACSHA1 hmacsha1 = new HMACSHA1();
hmacsha1.Key = Encoding.ASCII.GetBytes(string.Format("{0}&{1}", UrlEncode(), UrlEncode()));
string signature = Convert.ToBase64String(hashAlgorithm.ComputeHash(System.Text.Encoding.ASCII.GetBytes(baseString)));

UrlEncode()UrlEncode() 分别是消费者密码和令牌密码,应用了 url 编码。

【问题讨论】:

    标签: c# oauth linkedin


    【解决方案1】:

    我解决了。上面的逻辑是错误的。

    我交换了令牌密码和消费者密码,所以它是 LinkedinOAuthTokenSecretLinkedinOAuthConsumerSecret ({1}{0}),而不是相反。

    这创建了正确的密钥,可用于进行合法签名。

    【讨论】:

      猜你喜欢
      • 2011-04-04
      • 1970-01-01
      • 2011-06-13
      • 2011-05-25
      • 2011-08-29
      • 2017-05-08
      • 2018-12-25
      • 1970-01-01
      • 2011-01-31
      相关资源
      最近更新 更多