如何解决LinkedIn MemberSnapshot API的404‘未找到虚拟资源’错误?
解决LinkedIn MemberSnapshot API 404错误问题
1. 访问URL是否正确?
你用的memberSnapshotData是错误的,LinkedIn MemberSnapshot API的正确端点是https://api.linkedin.com/rest/memberSnapshots(复数形式)。资源路径拼写错误是导致404提示“No virtual resource found”的核心原因。
2. 参数q的取值是否正确?
你代码里的q='CONNECTIONS'是有效值,但你最初提到的q=criteria完全错误,不在官方允许的取值范围内。官方支持的q参数值包括:
CONNECTIONS:获取自身人脉快照数据OWN:获取自身个人快照数据GROUP:获取群组相关快照数据(需对应权限)
3. 是否需要额外的请求头或参数?
除现有配置外,需注意以下几点:
- 权限范围:你的access_token必须包含对应权限,比如
CONNECTIONS需要r_connections权限,OWN需要r_member_snapshot权限,权限不足会导致请求失败。 - 请求头优化:GET请求中
Content-Type不是必须的,可以删除,不影响请求;LinkedIn-Version需确保为官方支持的版本,202312是有效的,但后续版本更新时需同步调整。 - 额外参数:仅当
q=GROUP时,需要额外传入groupId参数,其他q值无需额外参数。
修正后的代码示例
import requests ACCESS_TOKEN = "你的访问令牌" headers = { 'Authorization': f'Bearer {ACCESS_TOKEN}', 'LinkedIn-Version': '202312' } # 修正后的正确端点 url = "https://api.linkedin.com/rest/memberSnapshots" params = { 'q': 'CONNECTIONS', } response = requests.get(url, headers=headers, params=params) print(response.status_code) print(response.json())
额外排查点
- 验证access_token有效性:确认令牌未过期、权限配置正确。
- 检查API版本兼容性:避免使用已废弃的旧版本,确保
LinkedIn-Version头对应官方当前支持的版本。
内容的提问来源于stack exchange,提问作者Martin Founeau
相关产品推荐
相关产品推荐

