繁体   English   中英

WEB API DELETE请求导致内部服务器错误500,内容长度为0

[英]WEB API DELETE request causes internal server error 500 with 0 length content

我创建了一个带有多个控制器的Microsoft Web API。 在我的本地计算机(Win 7,IIS Express)上测试其中一个控制器,一切正常。 我可以使用localhostetc / makes / 1请求删除ID为1的“ make”对象。 当我部署到服务器(W2K8,IIS7.5)时,在同一请求上出现500错误-请参阅http://api.carsnow.ie/makes/1

我的问题不是导致错误的原因,而是错误是什么? 收到0长度的回复时,我看不到详细信息。 早些时候,我遇到了一个自定义错误,但是在尝试查看基础堆栈跟踪的某个阶段,我什至丢失了该错误。

到目前为止,我已经尝试了以下方法。

我在web.config中将CustomErrors设置为“关闭”

我将此代码添加到了WebAPIConfig.cs- http: //lostechies.com/jimmybogard/2012/04/18/custom-errors-and-error-detail-policy-in-asp-net-web-api/

我加了

GlobalConfiguration.Configuration.IncludeErrorDetailPolicy = IncludeErrorDetailPolicy.Always; 

到Global.asax

我打开了IIS7中的详细错误

本文将为您提供帮助:

在早期版本的IIS中,默认情况下,来自经典ASP脚本的错误消息已发送到Web浏览器。 由于这些错误消息可能会向恶意用户泄露敏感信息,因此IIS 7及更高版本默认情况下会禁用此功能。 当您的经典ASP脚本在IIS中遇到错误时,默认情况下会收到以下错误消息:

 An error occurred on the server when processing the URL. Please contact the system administrator. If you are the system administrator please click here to find out more about this error. 

我怀疑这对每个人都适用,但是最后我能够通过删除IIS网站的“错误页面”设置中的500个自定义错误页面的设置来强制IIS进行操作。 似乎当找不到自定义错误的模板时,它吐出了真正的错误。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM