我正在尝试以下请求:
GET https://api.linkedin.com/v2/people/(id:urn:li:person:<person id>)?oauth2_access_token=<token>&projection=(results*(localizedFirstName,vanityName))
Run Code Online (Sandbox Code Playgroud)
但我总是得到:
{
"serviceErrorCode": 100,
"message": "Unpermitted fields present in RESOURCE_KEY: Data Processing Exception while processing fields [/memberId]",
"status": 403
}
Run Code Online (Sandbox Code Playgroud)
如果我尝试使用替代 API 来执行此操作:
GET https://api.linkedin.com/v2/people?ids=List((id:urn:li:person:<person id>))&oauth2_access_token=<token>&projection=(results*(localizedFirstName,vanityName))
Run Code Online (Sandbox Code Playgroud)
返回内部服务器错误:
{
"message": "Internal Server Error",
"status": 500
}
Run Code Online (Sandbox Code Playgroud)
我正在使用 Google Chrome 来执行这些请求。
我也尝试过使用邮递员。
标题:
X-Restli-Protocol-Version: 2.0.0
Authorization: Bearer <token>
Run Code Online (Sandbox Code Playgroud)
得到:
{
"serviceErrorCode": 0,
"message": "Syntax exception in path variables",
"status": 400
}
Run Code Online (Sandbox Code Playgroud)
我的应用程序权限是:
我尝试了其他 API(socialActivity、ugcPosts),一切看起来都很好。
我检查了我的 API 使用情况,https://www.linkedin.com/developers/apps/<id>/usage目前people使用率为 0%。
测试的用户资料也是公开的。
您应该只使用 id(而不是 urn)。字段投影也是错误的:
使用:
projection=(localizedFirstName,vanityName)
Run Code Online (Sandbox Code Playgroud)
代替:
projection=(results*(localizedFirstName,vanityName))
Run Code Online (Sandbox Code Playgroud)
例如:
curl -H "X-Restli-Protocol-Version: 2.0.0" \
"https://api.linkedin.com/v2/me?oauth2_access_token=<TOKEN>&projection=(id)"
Run Code Online (Sandbox Code Playgroud)
将返回
{
"id": <ID>
}
Run Code Online (Sandbox Code Playgroud)
并将其用作:
curl -H "X-Restli-Protocol-Version: 2.0.0" \
"https://api.linkedin.com/v2/people/(id:<ID>)?oauth2_access_token=<TOKEN>&projection=(localizedFirstName,vanityName)"
Run Code Online (Sandbox Code Playgroud)
所以:
{
"vanityName": "<VANITY-NAME>",
"localizedFirstName": "<NAME>"
}
Run Code Online (Sandbox Code Playgroud)
希望这有帮助
| 归档时间: |
|
| 查看次数: |
3342 次 |
| 最近记录: |