LinkedIn API无法获取用户URN问题咨询
解决LinkedIn API获取用户URN用于内容分享的问题
核心结论
LinkedIn的用户URN格式是固定的:urn:li:person:{user_id},你不需要依赖已失效的旧API获取——/v2/me返回的id字段,或者/v2/userinfo返回的sub字段,就是构造URN需要的user_id,二者值完全一致。
具体操作步骤
- 提取用户ID
- 从
https://api.linkedin.com/v2/me的响应中取出id字段(比如你返回的XXX-XXXX) - 或者从
https://api.linkedin.com/v2/userinfo的响应中取出sub字段,值和上面的id完全相同
- 从
- 构造用户URN
把ID拼进固定格式,得到完整URN:urn:li:person:XXX-XXXX - 构造分享请求体
用这个URN作为author字段的值,按照官方要求构造分享请求,示例如下:{ "author": "urn:li:person:XXX-XXXX", "lifecycleState": "PUBLISHED", "specificContent": { "com.linkedin.ugc.ShareContent": { "shareCommentary": { "text": "从我方平台分享的测试内容" }, "shareMediaCategory": "NONE" } }, "visibility": { "com.linkedin.ugc.MemberNetworkVisibility": "PUBLIC" } }
额外检查点
- 确认你的应用已申请并获得
w_member_social权限(你当前权限列表里已包含,无需额外申请) - 验证令牌的有效权限:可以调用
https://api.linkedin.com/v2/me?projection=(id,authorizedActions),检查返回的authorizedActions中是否包含com.linkedin.ugc.ShareAction,确保有权限发布内容 - 确认你的应用类型是消费者应用(Consumer App),只有这类应用支持用户分享内容到个人主页
内容的提问来源于stack exchange,提问作者Ahmed
相关产品推荐
相关产品推荐

