1

我有一堆期望 auth cookie 的 wcf webhttp (rest) 服务。问题是 - 如何将 formsauth 票证传递给 wcf 服务?流动身份验证适用于通过浏览器获取请求(应该如此),但我不确定如何在使用 httpclient 或 webchannelfactory 的调用期间设置 cookie。至此,身份验证完成,cookie 可用。在通过 HttpClient 调用服务时,我不确定在哪里插入 cookie。

HttpClient client = new HttpClient();
HttpContent content = 
    HttpContentExtensions.CreateDataContract<EmployeeData>(MyEmployee);
resp = client.Post("http://localhost/someservice", content);

我还尝试按照以下网址使用 webchannelfactory - http://zamd.net/2009/03/05/flowing-forms-authentication-cookie-to-wcf/

但是,var identity = Thread.CurrentPrincipal.Identity as ClientFormsIdentity;即使 Thread.CurrentPrincipal.Identity 是有效的 FormsIdentity,也会返回 null。任何建议都会很有帮助。

4

0 回答 0