3

这是我的第一个问题,您好,感谢您的支持!我目前正在开发一个 Windows 8 商店应用程序。我需要登录到 OAUTH 网站并获取响应令牌以保存为字符串。我希望它出现在弹出窗口中,让用户登录,然后在收到响应后关闭。

我可以让 webview 弹出,我可以导航到页面。但是我如何处理响应并关闭。我说VB。

再次感谢!

编辑添加我的代码:

Dim url As New Uri("https://aurlthatidontcontrol")
WebView1.Navigate(url)
PopUp.IsOpen = True

MY 弹出窗口打开并显示 url 的登录名。登录后,我应该从该服务器获得包含访问令牌的响应,我想将该令牌放入我的应用程序并将其保存为字符串,然后关闭弹出窗口

4

2 回答 2

1

好的,我想通了。

我没有实际调用 webview,而是使用了 web-broker 身份验证。细节

这允许服务登录在屏幕上“弹出”,我可以像这样捕获结果:

Dim webresult As WebAuthenticationResult = Await      
WebAuthenticationBroker.AuthenticateAsync(WebAuthenticationOptions.None, StartURI, endURI)

Dim finalresponse() As String = webresult.ResponseData.ToString.Split("=")
Dim currentuserstoken As String = finalresponse(1)
Return currentuserstoken
于 2012-09-28T17:29:08.533 回答
0

使用WebView类上的InvokeScript方法调用 JavaScript 代码以从响应中收集信息并将其返回调用代码。如果您控制的页面中没有脚本,请使用“eval”作为函数名称并将参数传递给它。

或者,在 JavaScript 中使用 window.external.notify 来触发ScriptNotify事件(链接包括一个示例)。

于 2012-09-26T14:01:25.657 回答