2

我遇到了一个我目前正在处理的网站的问题。Twitter从网站连接而不弹出

我已经添加了一个鸣叫框我的页面供用户推特关于当前文章。如果用户从Tweet框中提交,并且当前未登录或未与我的网站连接,他/她将从twitter获取一个弹出窗口,询问用户名/密码和/或他/她是否接受与我的网站的连接。

如果用户接受弹出窗口关闭并且一切都很好,那么如果用户拒绝,窗口就会关闭,推文仍然是可能发生的梦想。

到目前为止好,但!我的网站主要针对智能手机(尤其是iPhone),如果用户将我的网站添加到主屏幕(我建议),那么Twitter的弹出窗口会填充整个应用程序窗口。这我可以理解,并且如果用户接受,一切都会解决。

另一方面,如果用户拒绝,则没有窗口可供按钮关闭以便发生注意。我的webapp运行全屏和独立,所以甚至没有后退按钮。因此,如果用户不接受Twitter连接,他/她基本上需要重新启动应用程序才能从“弹出”菜单中获取。所以(终于;))我的问题是这样的;是否有一个Twitter页面执行不需要在弹出窗口中的连接认证?一个页面基本上发送回到接受和取消回调网址?还是有一种我看过的不同方法?

期待一些有用的提示!

编辑


我建议The standard OAuth flowWeb intents,问题是,应用程序需要在客户端代码/只有JavaScript。这使得标准的OAuth流程不可能实现,因为它通过http/https发送应用程序秘密,这使得我把秘密放在javascript中(我可能有点爱好者程序员,但是有限制;))。

Web意向页面没有取消/返回按钮,所以如果用户不想连接并以stanalone模式运行我的应用程序,我仍然卡住。

我想我应该包括在原来的职位,谢谢反正的建议。

回答

3

Twitter的standard OAuth flow不需要弹出窗口。您可以改为重定向当前窗口。然后,您必须通过您的服务器处理表单提交自己和post the status

您还可以结帐Web Intents。用户从移动优化twitter.com页面发布推文。

+0

问题是,OAuth流程仅在https上是安全的,因此在此处不可用。网络意图似乎没有取消按钮,所以我仍然坚持当我的应用程序独立运行 – 2011-05-06 04:25:20

+0

为什么https不可用? – abraham 2011-05-06 05:27:59

+0

实际上,这个应用程序是JavaScript只。由于无法控制的限制,我不能使用任何服务器端代码,所以它不仅仅是https,而是服务器端代码。无论如何,我不能发送/ recive应用程序的秘密与JavaScript。我想我可能不得不在Twitter上做些事 – 2011-05-06 05:57:35