【发布时间】:2014-11-25 02:47:12
【问题描述】:
我有一个 Windows Phone 8/8.1 应用程序,其中包含一个带有嵌入式网络浏览器的页面。我构建了一个从网站中提取信息的文章列表,所有这些工作正常,但请注意,我仅在用户单击列表中的项目时使用此 Web 浏览器来显示文章。
有问题的文章提供了一个按钮,允许用户通过 twitter 离开 cmets。每篇文章的底部都有一个“Twitter 登录”按钮。当我点击它时,它会将我带到授权页面,并将新闻网站显示为我要授权的应用程序。
输入我的 twitter 凭据并单击“授权应用程序”后,我收到以下错误:
Exception of type 'Microsoft.Phone.Controls.WebBrowserNavigationException' was thrown.
然后会显示一个 Twitter 网页,显示以下内容:
There is no request token for this page. That's a special key we need from applications asking you to use your Twitter account. Please go back to the site or application that sent you here and try again. It's probably just a mistake.
它确实对我进行了身份验证,因为我可以看到我的 Twitter 帐户图片,但它未能授权该应用程序。
我知道我的应用程序不是原始网站,因为它是 wp8/8.1 应用程序,但我在网络浏览器中调用的是包含新闻网站所有原始代码的页面,因此您会假设一切就像我直接从浏览器调用网站一样。
如果我从 wp8/8.1 附带的浏览器调用网站,它可以正常工作!奇怪的是,它们具有相同的功能,但使用的是 facebook,并且按预期工作。
我查看了html“twitter 授权页面”,当我从我的手机和我的笔记本电脑上的网络浏览器直接调用时,虽然我可以清楚地看到表单包含 @987654324 的隐藏字段@ 有一个值,oauth_token 有另一个值,它们确实不同。
我不知道它们是否相同,但正如我所说,我不明白为什么这不起作用,因为当我在嵌入式网络浏览器中显示文章时,你会假设一切否则,在此之后继续进行的行为将与常规 Web 浏览器中的行为一样,并且当单击此“授权应用程序”按钮时,您会假设所有值都将正常传递,并且应用程序将获得授权,但不是!!
关于如何解决此问题的任何建议?
谢谢。
【问题讨论】:
标签: windows-phone-7 windows-phone-8 twitter windows-phone-8.1 twitter-oauth