Python调用LinkedIn API发布内容遇500内部服务器错误求助
LinkedIn API调用500内部服务器错误排查与修复
问题概述
使用Python开发LinkedIn API内容发布服务时,调用/v2/ugcPosts接口返回未明确原因的500内部服务器错误,调整请求JSON结构后问题仍未解决。
原请求代码
import requests import json headers = { 'Authorization':'Bearer KEY', 'X-Restli-Protocol-Version': '2.0.0', 'Content-Type': 'application/json', 'X-LinkedIn-Auth-Member-Id': 'urn:li:organization:87433271', } # 定义要发布的内容 data = { 'lifecycleState': 'PUBLISHED', 'specificContent': { 'com.linkedin.ugc.ShareContent': { 'shareCommentary': { 'text': '13sec', }, 'shareMediaCategory': 'NONE', }, }, 'visibility': { 'com.linkedin.ugc.MemberNetworkVisibility': 'PUBLIC', }, } # 将内容转换为JSON格式 data = json.dumps(data) # 向企业页面发布内容 response = requests.post( 'https://api.linkedin.com/v2/ugcPosts', data=data, headers=headers, ) # 检查发布是否成功 if response.status_code == 201: print('内容发布成功!') else: print('发布内容时出错:', response.text)
错误响应
发布内容时出错:{"message":"Internal Server Error","status":500}
问题排查与修复方案
出现500错误的核心原因是请求参数与企业页面发布规则不匹配,具体问题及修复如下:
- 错误的
X-LinkedIn-Auth-Member-Id字段:该字段应填写成员(Member)的URN,而非组织URN。发布企业页面内容时,无需通过此header指定主体,而是通过请求体中的author字段指定组织URN。 - 缺少
author字段:发布到企业页面必须明确指定内容的发布主体,需在请求数据中添加author字段,值为目标企业组织的URN。 - 可见性类型不匹配:发布企业内容时,可见性类型应使用
com.linkedin.ugc.OrganizationVisibility,而非针对个人的MemberNetworkVisibility。
修复后的代码
import requests import json headers = { 'Authorization':'Bearer KEY', 'X-Restli-Protocol-Version': '2.0.0', 'Content-Type': 'application/json', } # 定义要发布的内容 data = { 'author': 'urn:li:organization:87433271', # 添加企业组织URN作为发布主体 'lifecycleState': 'PUBLISHED', 'specificContent': { 'com.linkedin.ugc.ShareContent': { 'shareCommentary': { 'text': '13sec', }, 'shareMediaCategory': 'NONE', }, }, 'visibility': { 'com.linkedin.ugc.OrganizationVisibility': 'PUBLIC', # 修改为企业可见性类型 }, } data = json.dumps(data) response = requests.post( 'https://api.linkedin.com/v2/ugcPosts', data=data, headers=headers, ) if response.status_code == 201: print('内容发布成功!') else: print('发布内容时出错:', response.text)
额外注意事项
- 确保Access Token拥有
w_organization_social权限,这是发布企业页面内容的必要权限 - 验证组织URN的正确性,确认该组织与开发者账号关联且有权限发布内容
内容的提问来源于stack exchange,提问作者rei
相关产品推荐
相关产品推荐

