1

我有一个托管在 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 或我缺少的任何身份验证设置。

4

1 回答 1

1

解决了,是因为数据库问题。我查看了返回的默认 try..catch

HttpStatusCode.NotFound (404) 

而不是 500 错误代码。它现在启动并运行。

于 2012-06-14T07:47:41.850 回答