【问题标题】:LinkedIn user's profile picture URL returns 403 - Forbidden or Access Denied, received over LinkedIn's OAuth 2.0 Developer APILinkedIn 用户的个人资料图片 URL 返回 403 - 禁止访问或拒绝访问,通过 LinkedIn 的 OAuth 2.0 开发人员 API 接收
【发布时间】:2020-09-04 20:30:03
【问题描述】:

我目前正在使用 LinkedIn OAuth 2.0 开发人员 API 制作一个 LinkedIn 应用,权限为 r_liteprofiler_emailaddress(添加到我的应用中的产品包括 Share on LinkedInSign In with LinkedIn)。

最近使用此 GET API 检索到的个人资料图片(根据 LinkedIn 自己的开发人员文档):

https://api.linkedin.com/v2/me?projection=(id,firstName,lastName,localizedFirstName,localizedLastName,profilePicture(displayImage~:playableStreams))

已经开始返回403 - Forbidden

完整的错误信息:

<?xml version="1.0" encoding="iso-8859-1"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
         "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
    <head>
        <title>403 - Forbidden</title>
    </head>
    <body>
        <h1>403 - Forbidden</h1>
    </body>
</html>

错误Access Denied 例如

Access Denied
You don't have permission to access "http://media-exp1.licdn.com/dms/image/C4E03AQHE3A16fLv1kQ/profile-displayphoto-shrink_800_800/0?" on this server.
Reference #18.2e5c7a5c.1589838983.25cfca02

例如https://media-exp1.licdn.com/dms/image/C4E03AQHE3A16fLv1kQ/profile-displayphoto-shrink_800_800/0?e=1586995200&v=beta&t=zVNycwFPGiCoLZBJBkJoN6d_n7EAVVne-nK-r75RzMo

这个网址在不使用 VPN 时给我Access Denied,在使用 VPN 时给我403 - Forbidden

这告诉我,我的 IP 地址正在被记录,如果我直接访问该 URL 几次,一些安全机制就会启动。

然而,大约两个月前,我可以从我的应用程序中直接链接到此个人资料图片 URL,它会正常加载。

如果 LinkedIn 进行了一些更改,我无法再链接到个人资料图片 URL - 我还能如何访问用户的个人资料图片?

您能提供的任何帮助将不胜感激!

【问题讨论】:

    标签: oauth-2.0 linkedin linkedin-api


    【解决方案1】:

    检查您的标识符的identifierExpiresInSeconds。您可以在文档中看到该字段: https://docs.microsoft.com/en-us/linkedin/shared/references/v2/profile/profile-picture#profile-api-sample-response

    我创建了一个 Linkedin 应用程序来测试它,它对我来说很好用。我也可以从不同的 IP 访问个人资料图片。我收到的回复是 identifierExpiresInSeconds1596067200,距离请求时间正好两个月。

    这与您对问题的描述相符 - 两个月前它运行良好。现在您的标识符似乎已过期。您将需要执行另一个 API 调用以获取有效的图片标识符。

    【讨论】:

    • 感谢@Laurenz,这似乎很合乎逻辑。我还没有测试过这种情况,但我会在此期间奖励你赏金,并在我的应用程序再次运行后更新这个问题。
    猜你喜欢
    • 2018-11-09
    • 1970-01-01
    • 1970-01-01
    • 2019-03-23
    • 2019-10-21
    • 1970-01-01
    • 1970-01-01
    • 2017-03-16
    • 1970-01-01
    相关资源
    最近更新 更多