我在 mvc5 中使用 OWIN 对用户进行身份验证,但我也想显示他们的个人资料图片。我在 strackoverflow 上搜索并找到了以下方法来完成它。
这是针对 facebook 和 Google plus 的:
https://plus.google.com/s2/photos/profile/[USERID]?sz=100
http://graph.facebook.com/[USERID]/picture?type=square
这是检索图像的最佳方式吗?我们应该将图像存储到我们的服务器上并在本地加载,还是每次有人登录时我们都调用这些链接?我需要一个合适的方法,例如如果我们将它们存储在本地,那么如果用户在 Facebook 上更改他们的个人资料图片,它们将不会更新,但如果我们每次都从 Facebook 加载它们,那么需要一些加载时间来执行 302 重定向到实际图像 url。
最佳答案
如果您只是想在网站上显示图片,我会在有人登录您的网站时将您从 Facebook/Google 提供的链接存储在本地数据库中,并使用该 URL 作为图像源网站。 Facebook 和 Google 会将这些图像存储在快速 CDN 上,您不妨利用一下。
这将减轻图像存储的负载以及从您自己的站点提供图像的需要,从而减少负载和存储要求。
然后每次用户登录您的网站时,都会再次检索他们的个人资料图片网址并存储它们以确保它们是最新的。
关于facebook - 使用 MVC5 OWIN 检索 facebook 个人资料图像的最佳方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21394614/