Asp.net mvc 4 如何使用浏览器在MVC.NET应用程序中测试基本身份验证

Asp.net mvc 4 如何使用浏览器在MVC.NET应用程序中测试基本身份验证,asp.net-mvc-4,basic-authentication,Asp.net Mvc 4,Basic Authentication,我正在尝试在我的mvc.net web应用程序上设置基本身份验证。我使用以下示例配置了控制器: 我在其中设置了一个断点,用于检查授权标头,但是该标头不在HttpRequest中。我访问该网站的方式如下: http://user1:pass1@localhost/{AppName}/Client/Authorize 如果我从控制器中删除[BasicAuthorization]属性,我就可以访问该页面 我正在Windows 7计算机上使用IIS 7.0调试此程序 我认为这可能与IIS中的默认授权设

我正在尝试在我的mvc.net web应用程序上设置基本身份验证。我使用以下示例配置了控制器:

我在其中设置了一个断点,用于检查授权标头,但是该标头不在HttpRequest中。我访问该网站的方式如下:

http://user1:pass1@localhost/{AppName}/Client/Authorize
如果我从控制器中删除[BasicAuthorization]属性,我就可以访问该页面

我正在Windows 7计算机上使用IIS 7.0调试此程序

我认为这可能与IIS中的默认授权设置有关。当我抛出HttpUnauthorizedResult()异常时,Chrome中会弹出一个用户名/密码框。。。我不知道如何告诉IIS使用自定义代码对用户进行身份验证

人类用户无法访问此应用程序,因此需要在URL中传入用户名/密码,如上图所示

我也发现了这个帖子:。在IIS将未经授权的请求发送到浏览器后,我尝试发送两次请求,但此时会弹出用户名/密码对话框。我也不知道如何使用Curl命令进行测试。。。是通过CMD吗?

我在这里找到了这篇文章:

我可以参考本教程中使用的测试页面:设置一个简单的测试页面来测试基本身份验证是否正常工作

我不完全确定原因,但我相信当您尝试发送凭据时,浏览器不会自动向HttpRequest添加身份验证头,如下所示:

http://user1:pass1@localhost/{AppName}/Client/Authorize
这一定与浏览器有关,浏览器需要在发送身份验证头之前首先从服务器获得401响应。我就是不知道怎么做。如果有人知道如何正确配置IIS/浏览器,以便您可以使用上述URL格式轻松测试基本身份验证,请告诉我