簡體   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