0

对于我的问题,我已经完成了大量可能的解决方案,但我仍然无法让 Web API 在我的新开发机器上正常工作。我的旧开发机器和新机器都在 Windows 7 64 位上运行 Visual Studio 2012。在 Windows Server 2012 上运行的生产网站运行良好,但我无法让我的新计算机解析 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>

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

4

1 回答 1

1

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

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

http://localhost/clientsite/data/ads/getdata?key=thiskey
于 2013-02-25T16:02:26.777 回答