我一直在阅读很多有关LinkedIn登录的问题/答案,通过javascript登录和后端用户验证。但我没有找到适用于当前API的解决方案。
我知道JS令牌与Oauth Token不同,我不需要保存令牌以备将来使用,我只需要在网站注册前验证用户。
用户通过身份验证后,我将要求基本个人资料用户api-standard-profile-request
IN.API.Profile("me").fields(
'id', 'first-name', 'last-name', 'email-address', 'api-standard-profile-request')
apiStandardProfile返回一个带有url的对象(如此https://api.linkedin.com/v1/people/{id_user}
)和带有标题的数组(如此name: "x-li-auth-token", value: "name:xxxx"
)。我没有在官方文档中找到如何使用它,但每次“身份验证失败”时都会收到状态码为200.
那么,我是否需要使用Oauth2.0重写身份验证流程,还是可以继续使用Javascript登录?
由于
P.S。:我发现并阅读了这个旧主题https://web.archive.org/web/20141028192415/https://developer.linkedin.com/documents/exchange-jsapi-tokens-rest-api-oauth-tokens中的旧文档。
答案 0 :(得分:1)
我遇到了同样的问题,我发现使用JS令牌的唯一方法是在使用Rest API请求内容时使用标头oauth_token而不是Authorization Bearer标头:
POST https://api.linkedin.com/v1/people/~:(id,firstName,lastName,picture-url,email-address)?format=json
Headers {
'oauth_token': JS_TOKEN
}
JS_TOKEN我正在阅读 IN.ENV.auth.oauth_token 的前端。
答案 1 :(得分:0)
我还面临很多关于LinkedIn API的问题,我建议你关注Linkedin开发者网站上的最新开发文档,因为LinkedIn在2015年2月之后已经更改了他们的开发者计划significantly,因此取决于< strong>旧的API会有风险。
我相信以下内容可以帮助您解决问题,
使用this link来探索&amp;测试API,包括配置文件API。
如果您只需要公开个人资料,请在API中添加此public-profile-url
作为逗号分隔参数。
https://api.linkedin.com/v1/people/~:(id,num-connections,picture-url,public-profile-url)?format=json
或 siteStandardProfileRequest ,请使用以下API
https://api.linkedin.com/v1/people/~?format=json
Javascript SDK
优点:易于集成,编码工作量少,无需代币管理。
缺点 - 不支持iOS
的OAuth