IIS版本之间的不同HTTP StatusCodes

时间:2016-04-08 07:56:45

标签: asp.net api iis

我正在为我的Web API编写一些模糊测试,我在IIS 8.5和IIS 10.0之间的HTTP返回代码中遇到了一些差异。我的API中有以下方法:

[Route("{id:int}/GetSomething")]
[HttpGet]
public async Task<IHttpActionResult> GetSomething(int id)
{
    return Ok(2);
}

这给出了API调用

http://server/api/Something/5/GetSomething 

运作良好。

在模糊测试期间,我尝试对API进行不同的随机输入,例如字符串而不是int:

http://server/api/Something/asdf/GetSomething 

当我在IIS Express 10.0上托管我的API时,StatusCode是&#34; 404 Not Found&#34;。 当我在Windows Server 2012 R2上的IIS 8.5上托管我的API时,StatusCode是&#34; 401 Unauthorized&#34;。

当我尝试插入空格时:

http://server/api/Something/ /GetSomething 

两台服务器都返回&#34; 404 Not Found&#34;。

为什么它们对字符串输入的行为有所不同?有没有办法配置任何一个表现得像另一个?

0 个答案:

没有答案