在我解释问题之前的一些背景。我正在做一个项目,其中:
1) 用户 "Sam" 通过 facebook 登录
2) 创建一个事件
3) 从 facebook 上传一个相册到这个事件
4) 邀请他的朋友 "foo","bar" 和 "temp" 来查看这个相册
5) 朋友可以接受邀请并查看这些相册
到目前为止,一切都很好。但以下也是用例的一部分:
6) 用户“foo”也可以将他的 Facebook 相册上传到活动中。“bar”和“temp”也可以。
第 6 点)是问题出现的地方。想象一下“foo”将专辑添加到事件的情况。"foo" 也不是 "bar" 和 "temp" 的朋友。除非“foo”添加的相册不是公开的,否则“bar”和“temp”无法使用访问令牌查看此相册。所以这就是我的提议,我希望 stackoverflow 的专家评论这是否是正确的方法。
解决方案 1
当用户将相册上传到我们应用中的活动时,将该相册的所有照片 url 保存到我们的数据库中。这样,该活动的所有用户都可以看到每个人的照片
解决方案 2
将用户“foo”的长期访问令牌保存到 db。当用户“bar”尝试查看此相册时,使用用户“foo”的访问令牌来获取照片。
我不确定这两种解决方案,因为我担心我可能会违反 Facebook 的隐私政策。我可以在用户“foo”使用此应用程序之前询问“您的照片将被此活动邀请的每个人查看”并且只有当他接受时,我们才会执行上述任一解决方案。够了吗?我不想被起诉:)
很抱歉这个问题很长,但我认为有必要解释整个用例。