url - Web Api:Whitespace使ASP.NET 4 Web Api(RC)崩溃

标签 url crash uri whitespace asp.net-web-api

在Beta版中,我注意到如果我用空白调用URI,则框架会引发异常。

(是的,通常浏览器用'%20'代替空格,但是如果我使用Fiddler或自己的HTTP客户端,则可以杀死Web api)

现在,Web Api已命中RC,但此错误仍然存​​在。 (NullReferenceException)
微软知道这个错误吗?

堆栈跟踪:

at Microsoft.VisualStudio.WebHost.Request.IsBadPath() at Microsoft.VisualStudio.WebHost.Request.TryParseRequest() at Microsoft.VisualStudio.WebHost.Request.Process() at Microsoft.VisualStudio.WebHost.Host.ProcessRequest(Connection conn)
at Microsoft.VisualStudio.WebHost.Host.ProcessRequest(Connection conn) at Microsoft.VisualStudio.WebHost.Server.OnSocketAccept(Object acceptedSocket) at System.Threading.QueueUserWorkItemCallback.WaitCallback_Context(Object state) at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean ignoreSyncCtx) at System.Threading.QueueUserWorkItemCallback.System.Threading.IThreadPoolWorkItem.ExecuteWorkItem() at System.Threading.ThreadPoolWorkQueue.Dispatch() at System.Threading._ThreadPoolWaitCallback.PerformWaitCallback()

最佳答案

异常的堆栈跟踪是什么?如果栈顶看起来像这样:

WebDev.WebHost40.dll!Microsoft.VisualStudio.WebHost.Request.IsBadPath() Line 435 + 0x1e bytes C# WebDev.WebHost40.dll!Microsoft.VisualStudio.WebHost.Request.TryParseRequest() Line 182 + 0x9 bytes WebDev.WebHost40.dll!Microsoft.VisualStudio.WebHost.Request.Process() Line 94 + 0x9 bytes C# WebDev.WebHost40.dll!Microsoft.VisualStudio.WebHost.Host.ProcessRequest(Microsoft.VisualStudio.WebHost.Connection conn) Line 75 + 0xb bytes C#



这是Visual Studio Web服务器中的一个已知错误。由于此Web服务器仅侦听localhost,因此这不是安全问题,也不会得到解决。

关于url - Web Api:Whitespace使ASP.NET 4 Web Api(RC)崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11097023/

相关文章:

java - 单击 TextView 时我的应用程序崩溃

flutter - 如何在Flutter或Dart中将字符串编码为RFC 3986?

django-在 urls.py 中传递字符串或实例?

macos - Android Studio for Mac 在启动时崩溃

javax UriBuilder 未正确转义 '}'

macos - webView不适用于osx

uri - 在 dropwizard 中为 REST web 服务配置 URI 前缀

android - 为什么 ImageView.setImageURI() 在 Android 2.2 而不是 2.1 中工作?

python - 如何使用 django process_request 更改 url。

javascript - 读取 URL 参数时代码未获取预期值