2

我正在使用 WCF Web API(最新版本,我认为是 0.5,从 VS2010 Ultimate 集成包依赖 GUI 获得)。

我已经公开了一个简单的 API 类,并且在每个方法中我都在调用对用户执行授权。当用户未经授权时,我会使用 401/未经授权的代码抛出 HttpResponseException。

这有效,您可以看到在 Http 处理程序链中的某个点,401 被捕获。问题是 API 所在的站点包含 ASP.NET Forms 身份验证......所以当看到 401 时,它会尝试将我的客户端请求转发到登录页面。

如何为我的站点中的特定子目录禁用此行为?我试过设置“api”的位置总是允许用户......但我仍然抛出一个 401,它仍然会导致 ASP.NET 尝试将我重定向到登录页面。

我确定我只是缺少一个简单的配置设置,它告诉表单身份验证忽略对 /api/* 目录的请求,但我找不到任何信息。

4

1 回答 1

2

我已经描述了这个问题及其解决方案(使用 Preview4):Basic Authentication with WCF Web API hosting in IIS / Getting a 404 - Disable Forms Authentication Redirection

于 2011-09-22T13:39:09.167 回答