2011-03-22 65 views
0

我是WP7的新手,我正在开发一个WP7应用程序,该应用程序使用C#与Rest服务进行通信。我已经能够使用HttpWebRequest成功开发异步代码来与它交互。在WP7应用程序中调用和处理来自Rest服务的响应

但是,我在登录方面存在困难(该服务将所有登录到Facebook的细节都提取出来,所以我不必处理它们,我只需要通过服务调用登录)。

该服务通过为我提供一个URI来调用登录,我可以调用其中需要包含QueryString的几个参数(如应用程序和用户登录信息)的URI。我需要发送的另一个参数是我的应用代码中的“响应URI”,用于接收登录响应。所以,当服务执行登录过程时,它会不断地将信息发送回我的“响应URI”以通知我登录过程的状态。

登录过程的可能的结果包括:
1-在查询字符串到我的“响应URI”成功消息

2-更有趣的是,服务可能需要我的用户输入附加信息以便登录,在这种情况下,服务想要在我的应用内显示网页以供用户输入此信息。

由于上述#2,我相信我需要我的WP7应用程序中的“响应URI”作为WebBrowser控件。因此,来自服务的登录响应可以发送到那里,并且我只监视显示在该WebBrowser上的URI的查询字符串,直到我确定我们已经到达登录过程的“最终结果”。同时,我的应用程序只是让服务使用WebBrowser与我的用户进行交互(如果需要的话)。

我的问题是,我不知道如何设置登录调用的“响应路径”为WebBrowser。任何帮助或建议将不胜感激。

在此先感谢。

+0

这听起来有点像RPX/JanRain Engage设置 - 但通常对于该服务,ResponseUri仅适用于webbrowser登录方法。如果是这样,那么我不确定你的API是否正确。你能发布更多信息吗? – Stuart 2011-03-22 19:54:16

回答

0

此回复基于我对RPX/JanRain Engage的经验。这可能有助于如果我们知道您正在使用的登录系统(它不是Facebook本身,是这样吗?)

  1. 如果登录系统将向您发送“需要更多的信息”的消息,则该消息将包含一个URL以显示。
  2. 此时web浏览器中显示的网页,并在虚拟ResponseUrl传递(如http://myurl.special/reply
  3. 然后随时监控Web浏览器的OnNavigating事件 - 当web浏览器导航到http://myurl.special/reply那么你知道你做

我希望这有助于...

相关问题