LinkedIn用户的个人资料图片URL返回403--禁止或拒绝访问,通过LinkedIn的OAuth 2.0开发者API接收。

问题描述 投票:0回答:1

我目前正在使用LinkedIn OAuth 2.0开发者API制作一个LinkedIn应用,权限是 r_liteprofile & r_emailaddress (添加到我的应用程序的产品包括 Share on LinkedIn & Sign 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

如:E.g. https:/media-exp1.licdn.comdmsimageC4E03AQHE3A16fLv1kQprofile-displayphoto-shrink_800_8000?e=1586995200&v=beta&t=zVNycwFPGiCoLZBJBkJoN6d_n7EAVVne-nK-r75RzMo。

这个网址给我 Access Denied 当不使用VPN时,以及 403 - Forbidden 当使用VPN时。

这告诉我,如果我直接访问这个URL几次,我的IP地址就会被记录下来,一些安全机制就会踢进来。

然而大约在两个月前,我可以直接从我的应用中链接到这个个人资料图片URL,并且可以正常加载。

如果LinkedIn做了一些改变,我不能再链接到个人资料图片URL--我还能如何访问用户的个人资料图片?

如果您能提供任何帮助,我将非常感激!

oauth-2.0 linkedin linkedin-api
1个回答
1
投票

检查 identifierExpiresInSeconds 的标识符。你可以在文档中看到这个字段。https:/docs.microsoft.comen-uslinkedinsharedreferencesv2profileprofile-picture#profile-api-sample-response。

我创建了一个Linkedin应用来测试这个,它对我来说工作得很好。我也可以从不同的IP访问个人资料图片。我得到的响应有一个 identifierExpiresInSeconds1596067200从提出请求到现在正好两个月。

这与您对问题的描述相符--两个月前还能正常工作。现在你的标识符似乎已经过期了,你需要再执行一次API调用来获取一个有效的图片标识符。你需要执行另一个API调用来获得一个有效的图片标识符。

© www.soinside.com 2019 - 2024. All rights reserved.