2011-12-30 69 views
1

由于使用auth_problem=signature_invalid返回了401,我无法使用LinkedIn API。然而,我确实有一个似乎正在良好工作的项目,所以我正在使用它来识别差异。OAuth测试控制台签名与工作请求不一致

我读,我可以与OAuthTestConsole调试然而,这似乎产生不同的签名工作项目。

由于我这只是一种爱好,你可以有我的两个键:

API Key: gh69xphn2hcr 
Secret Key: 0ld6NVvjmpvrmZqw 

我的工作要求是:

POST https://api.linkedin.com/uas/oauth/requestToken HTTP/1.1 
Content-Type: application/x-www-form-urlencoded Host: api.linkedin.com 
Content-Length: 175 
Connection: Keep-Alive 

oauth_consumer_key=gh69xphn2hcr&oauth_nonce=186481&oauth_signature_method=HMAC-SHA1&oauth_timestamp=1325243837&oauth_version=1.0&oauth_signature=gTeEgzknW6DyI3aFTDcXduroIG4%3d 

然而oAuthTestConsole返回WNcZFXAC5Y2hoK4srFiFc69zi0M=的oauth_signature是什么(编码或不编码)。

我在想我必须使用TestConsole错误,这阻止了我解决工作/非工作项目之间的问题。你能否指出我为何会出现这种情况的正确方向?

回答

0

要使用OAuth测试控制台,您需要确保所有参数完全相同 - 时间戳(您需要手动设置,因为否则它将根据当前时间) - 随机数(请检查你的库发送) - 方法(在这种情况下POST)

需要清除这两个领域的的access_token(因为你没有一个初始请求)

社区成员在这里发布了一个有效的C#示例: https://developer.linkedin.com/thread/1190

许多人从这开始就有很多运气,因为使用OAuth可能会很棘手,没有一个例子可以开始。