我有一个托管在AppHarbor上的Asp.net WebAPI服务,它会在POST请求中抛出404错误。 MVC 4控制器的POST工作正常,尽管它托管在同一个虚拟目录中。
相同的WebApi适用于localhost。我尝试了以下选项但没有运气:
<system.webServer>
<validation validateIntegratedModeConfiguration="false" />
<modules runAllManagedModulesForAllRequests="true" >
<remove name="WebDAVModule" />
</modules>
<handlers>
<remove name="ExtensionlessUrlHandler-Integrated-4.0" />
<add name="ExtensionlessUrlHandler-Integrated-4.0" path="*." verb="*" type="System.Web.Handlers.TransferRequestHandler" resourceType="Unspecified" requireAccess="Script" preCondition="integratedMode,runtimeVersionv4.0" />
</handlers>
我还尝试设置基于操作的URL来检查它是否有效,但没有运气。我甚至用以下方法装饰了这个方法:
[AcceptVerbs("POST")]
是否需要将任何内容添加到web.config或我缺少的任何身份验证设置。
答案 0 :(得分:1)
解决了,这是因为数据库问题。我查看了返回
的默认try..catchHttpStatusCode.NotFound (404)
而不是500错误代码。它现在正在运行。