【发布时间】:2012-06-14 15:47:41
【问题描述】:
我有一个托管在 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 或我缺少的任何身份验证设置。
【问题讨论】:
-
其他基于
GET(例如)的WebApi方法是否有效? -
嗯,我在 AH 上的测试站点中设置了 WebAPI,它正在工作......我想知道有什么不同。您是否使用 Nuget 设置了 WebAPI?
标签: asp.net-mvc-4 asp.net-web-api appharbor