Silverlight:访问表单身份验证站点后面的 REST 服务
Posted
技术标签:
【中文标题】Silverlight:访问表单身份验证站点后面的 REST 服务【英文标题】:Silverlight: Access REST service behind forms authentication site 【发布时间】:2010-01-11 15:15:06 【问题描述】:我是 Silverlight 的新手,我正在构建一个简单的应用程序,它为费用报告门户提供了一个界面。该门户有一个我可以访问的 REST API;我知道我可以使用 WebClient 或 WebHttpRequest 来做到这一点。但是,为了能够访问 API,我需要先登录。登录是网站 login.aspx 上的简单表单身份验证。如何从 Silverlight 登录(发布到登录页面)?
注意:该站点设置了 clientaccesspolicy.xml,我可以访问不需要您登录的 REST URL。
【问题讨论】:
【参考方案1】:您是否查看过 Silverlight 业务应用程序项目模板和 WCF Ria Services。该模板内置了登录表单认证网站的功能。
您可以将其用作您的 silverlight 应用程序的起点,或者只是使用它来了解如何从 silverlight 执行身份验证。
【讨论】:
我第二次看WCF RIA的动作。特别是如果它很简单。就好像它是为你而设计的(这让我们对它的复杂用法感到非常不满) 我查看了 WCF Ria 服务,但没有找到任何可以帮助我的东西。我最终做的是使用 HttpWebRequest 发布到登录页面,然后我从响应中删除 cookie 并将 cookie 用于将来的请求。 好吧,至少你已经解决了你的问题。我仍然相信 RIA 服务将是最简单的途径。开箱即用,业务应用程序模板具有登录和注销用户的能力。以上是关于Silverlight:访问表单身份验证站点后面的 REST 服务的主要内容,如果未能解决你的问题,请参考以下文章
Silverlight 4中的IIS Windows身份验证问题
使用 ASP.NET 表单身份验证时如何获取当前登录用户的用户 ID?