Web API 404.0错误

时间:2013-02-25 15:52:43

标签: asp.net-mvc visual-studio-2012 asp.net-web-api

我已经为我的问题找到了大量可能的解决方案,但我仍然无法使Web API在我的新开发机器上正常工作。我的旧工作开发机器和新工作开发机器都在Windows 7 64位上运行Visual Studio 2012。在Windows Server 2012上运行的Production网站运行正常,但我无法让我的新计算机解析web api调用。电话是:

http://localhost/clientsite/data/getdata?key=thiskey

我确保没有安装WebDAV,安装了所有各种Web API组件和MVC 4,我目前正在使用以下配置条目:

<system.webServer>
    <modules runAllManagedModulesForAllRequests="true">
      <remove name="WebDAVModule" />
    </modules>
    <handlers>
      <remove name="WebDAV" />
      <remove name="ExtensionlessUrlHandler-ISAPI-4.0_32bit"/>
      <remove name="ExtensionlessUrlHandler-ISAPI-4.0_64bit"/>
      <remove name="ExtensionlessUrlHandler-Integrated-4.0"/>
      <add name="ExtensionlessUrlHandler-ISAPI-4.0_32bit" path="*." verb="*" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness32" responseBufferLimit="0"/>
      <add name="ExtensionlessUrlHandler-ISAPI-4.0_64bit" path="*." verb="*" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework64\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness64" responseBufferLimit="0"/>
      <add name="ExtensionlessUrlHandler-Integrated-4.0" path="*." verb="*" type="System.Web.Handlers.TransferRequestHandler" preCondition="integratedMode,runtimeVersionv4.0" resourceType="Unspecified" requireAccess="Script"/>
    </handlers>
  </system.webServer>

有人知道我错过了什么吗?谢谢!

1 个答案:

答案 0 :(得分:1)

这最终是我的一个愚蠢的错误,但希望这可能会帮助其他人。在我的路由表中,我有routeTemplate:ads / {controller} / {id}:

这意味着上面的网址实际上需要是:

http://localhost/clientsite/data/ads/getdata?key=thiskey