在asp.net中使用表单身份验证时,如何在访问WCF服务时停止302重定向到网页?
当客户端访问需要身份验证的aspx页面时,这是所需的行为,但是当身份验证失败时,不应将WCF服务重定向到HTML页面。
有什么想法吗?
汤姆。
答案 0 :(得分:0)
这是表单身份验证的预期行为。
通常,人们不会对WCF服务使用表单身份验证,因为WCF客户端无法响应登录表单。
解决此问题的最佳方法是更改WCF服务上的身份验证方法
修改强>
根据您的评论,它可能是两件事之一:
答案 1 :(得分:0)
试试这个。
在您的登录服务中添加一个方法作为LogOn,并在用户未经授权时返回您想要的任何内容。
public String LogOn()
{
return "Unauthorized";
}
然后按如下方式更新网络配置
<system.web>
<compilation debug="true" targetFramework="4.0" />
<authentication mode="Forms">
<forms loginUrl="/LoginService.svc/LogOn" />
</authentication>
<authorization>
<deny users="?"/>
</authorization>