我在ASP.NET核心应用程序中使用社交身份验证,其中一个是LinkedIn身份验证。
看起来LinkedIn API已经发生了一些变化,现在我们似乎得到了一些用户图像的参数。
这是我从LinkedIn API获取的虚拟完整/原始图片网址。知道这些参数意味着什么吗?特别是以t
?
这一点很重要的原因是,当用户登录时,我将数据库中已有的数据与来自LinkedIn的新数据进行比较 - 在我的情况下,它仅限于用户个人资料图片,即较小尺寸的图像和用户上传的原始图像。
我注意到图像总是显示不同。仔细分析,我可以看到这些参数,特别是以t
开头的参数是差异所在。这个小小的更改会触发我的代码中的事件来更新用户的图像,这可能是完全浪费的数据库调用。我可以通过自己的LinkedIn登录确认这一点。即使我的图片没有改变,原始图片的图片网址也总是不同的,因为t
组件存在差异。
t
参数可以是某种类型的时间戳,这意味着它可能总是不同的。我不想做出这个假设,因此这个问题。
答案 0 :(得分:0)
我尝试了以下LinkedIn端点“https://api.linkedin.com/v2/me?oauth2_access_token=”。
对我来说,“pictureInfo”部分下有两个图片,“croppedImage”和“masterImage”。我试图复制你提到的问题,但有时无法复制。在某些时候,我收到了“masterImage”的不同图像URN。没有。测试我理解'masterImage'每小时更新一次。有了这个,我进一步尝试了解图像URN中的参数。
从这些,
如果您使用'masterImage'来触发数据库调用,则可以使用正则表达式匹配条件来识别图像中的实际更改。