我正在使用 Firebase 作为后端实现书签服务(想想 Instapaper)。大多数情况下它工作得很好,但是我遇到了一个主要问题。
该服务的核心部分将是一个书签,允许用户为他们当前在浏览器中查看的页面添加书签(再次,如 Instapaper 的:https ://www.instapaper.com/save )。
我在实现这一点时遇到的第一个问题是,即使用户登录到我的 firebaseapp.com 页面,当来自小书签的 javascript 被触发时,该用户也没有显示为经过身份验证。我发现这很可能是由于跨域问题,所以接下来我实现了一个基于 iframe 的解决方案。这个想法是 iframe 的 url 托管在我的 firebaseapp.com 网站上,允许当前登录的用户显示为经过身份验证。
这在 Chrome 和 Firefox 中效果很好,但在 Safari 中失败,当 cookie 和网站数据的安全设置设置为“允许我访问的网站”而不是“始终允许”时(要求用户将该设置切换为“始终允许”不是实际的)。
这个问题有什么解决办法吗?每次在新域上单击小书签时都强制用户登录将非常不方便。在这一点上,我基本上没有想法(并且开始在网络开发方面超出我的深度)。
非常感谢您的帮助!