我目前正在处理的网站有问题。
我在我的页面上添加了一个Tweet box,供用户发布有关当前文章的推文。如果用户从 Tweet 框提交并且当前未登录或未连接到我的站点,他/她会从 Twitter 中获得一个弹出窗口,询问用户名/密码和/或他/她是否接受与我的站点的连接。
如果用户接受弹出窗口关闭并且一切都很好,如果用户拒绝窗口只是关闭并且推文仍然是一个梦想。
到目前为止还不错,但是!我的网站主要针对智能手机(尤其是 iPhone),如果用户将我的网站添加到主屏幕(我推荐),那么推特弹出窗口会填满整个应用程序窗口。这个我能理解,如果用户接受,一切都会好起来的。
另一方面,如果用户拒绝,则没有用于关闭按钮的窗口,因此会发生通知。我的 webapp 正在全屏独立运行,所以甚至没有后退按钮。因此,如果用户不接受 twitter 连接,他/她基本上需要重新启动应用程序才能避免“弹出窗口”。
所以(最后 ;))我的问题是这样的;是否有一个 twitter 页面执行不需要在弹出窗口中的连接身份验证?基本上将您发送回接受和取消的回调 url 的页面?还是我忽略了另一种方法?
期待一些有用的提示!
编辑
有人建议我 The standard OAuth flow和 Web intents ,问题是应用程序只需要是客户端代码/javascript。这使得标准 OAuth 流程变得不可能,因为它通过 http/https 发送应用程序 secret ,这让我将 secret 放在 javascript 中(我可能有点像业余爱好者程序员,但有限制;))。
Web Intent 页面没有取消/后退按钮,所以如果用户不想连接并在 stanalone 模式下运行我的应用程序,我仍然会卡住。
我想我应该将其包含在原始帖子中,无论如何感谢您的建议。
最佳答案
standard OAuth flow对于 Twitter 不需要弹出窗口。您可以改为重定向当前窗口。然后,您必须自己处理提交的表格和 post the status通过您的服务器。
您也可以查看 Web Intents .用户从经过移动优化的 twitter.com 页面发布推文。
关于javascript - Twitter 从没有弹出窗口的网站连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5895111/