我被客户要求将他们LinkedIn组中的最新帖子提取到我们的网站页面之一. 我正在使用ColdFusion 9进行开发,并且已经研究了这几天了,并决定在这里发布我的查询,希望有人能够帮助我. 我可以
我正在使用ColdFusion 9进行开发,并且已经研究了这几天了,并决定在这里发布我的查询,希望有人能够帮助我.
我可以达到我有一个requestToken的地步.我的理解是,我现在需要签署请求令牌以获取accessToken.我的问题是我需要在幕后做这件事.但是,我能找到的所有示例都是将前端用户重定向到授权URL以允许用户进行身份验证,但我不希望用户进行身份验证,我想要对服务器端进行身份验证.
我正在尝试使用Scribe Java包装器库.下面是我到目前为止获取requestToken(以及授权URL)的代码.我需要有人指出我在正确的方向上签署服务器端代码上的令牌,以便我可以进行必要的调用以使用Groups API(例如http://api.linkedin.com/v1/groups/ { ID} /帖计数= 5&安培;开始= 1)
<cfscript> var l = {}; //The LinkedIn public and private keys for application l.oauth_consumer_key = "[My public key]"; l.oauth_sign_key = "[My secret key]"; l.serviceBuilder = CreateObject("java","org.scribe.builder.ServiceBuilder"); l.LinkedInApiClass = CreateObject("java", "org.scribe.builder.api.LinkedInApi").getClass(); l.service = l.serviceBuilder.provider(l.LinkedInApiClass).apiKey(l.oauth_consumer_key).apiSecret(l.oauth_sign_key).callback("[My callback url]").build(); l.requestToken = l.service.getRequestToken(); l.authUrl = l.service.getAuthorizationUrl(l.requestToken); // I NEED TO DEFINE WHAT TO DO AT THIS POINT TO SIGN THE REQUEST SERVER SIDE ... ... </cfscript>Kirsten在技术上是正确的 – 在Api中链接需要用户身份验证.这很烦人,因为您需要进行身份验证甚至检索组帖子.
然而,有一些方法围绕它.
使用scribe,您可以手动创建访问令牌.那么我要做的是在Linked In上创建一个虚拟用户帐户,正常验证该用户并将返回的签名凭据保存在您的数据库中,然后您可以使用它来创建令牌:
var accessToken = createObject("java", "org.scribe.model.Token").init( "singedTokenStringReturnBackFromLinkedIn", "singedSecretStringReturnBackFromLinkedIn", "oauth_token=singedTokenStringReturnBackFromLinkedIn&oauth_token_secret=singedSecretStringReturnBackFromLinkedIn&oauth_expires_in=0&oauth_authorization_expires_in=0" );
然后,您可以跳过身份验证部分并调用api,允许您显示群组帖子,而无需当前用户登录:
var req = createObject("java", "org.scribe.model.OAuthRequest").init( createObject("java", "org.scribe.model.Verb").GET, "http://api.linkedin.com/v1/groups/123456/posts" ); oAuthService.signRequest(accessToken, req);
我不知道这是否会违反Linked In的T& C.