在azure上提供静态JSON文件

时间:2012-12-07 20:43:55

标签: azure sencha-touch

我制作了一个简单的Sencha Touch Web应用程序并将其部署到Azure以尝试Azure。 Sencha Touch做的第一件事就是尝试下载app.json文件。在IIS上,我通常在mime类型部分启用json,但我无法通过Azure Web控制台了解如何执行此操作。因此,当应用程序执行XMLHttpRequest以获取文件时,将返回404错误。

我已经看到一些关于将.json添加到web.config的帖子,我尝试了以下内容,但无济于事:

<system.webServer>
    <validation validateIntegratedModeConfiguration="false" />
    <staticContent>
      <remove fileExtension=".json"/>
      <mimeMap fileExtension=".json" mimeType="application/json"  />
    </staticContent>
    <handlers>
      <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="GET,HEAD,POST,DEBUG,PUT,DELETE,PATCH,OPTIONS" 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="GET,HEAD,POST,DEBUG,PUT,DELETE,PATCH,OPTIONS" 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="GET,HEAD,POST,DEBUG,PUT,DELETE,PATCH,OPTIONS" type="System.Web.Handlers.TransferRequestHandler" preCondition="integratedMode,runtimeVersionv4.0" />
    </handlers>
  </system.webServer>

网络应用就在这里。

http://nsgapp.azurewebsites.net

非常感谢有关如何启用Azure共享实例以提供.json文件的任何输入。

1 个答案:

答案 0 :(得分:2)

没关系,这是一个愚蠢的错误。我有两个网站...一个服务于sencha web应用程序,一个ASP.NET MVC WebAPI网站用于web服务。我在后者上启用json,当我应该在前者启用它时,因为app.json是从实际的客户端应用程序提供的。因此,启用azure下载静态json文件的正确方法是确保您拥有:

<system.webServer>
    <staticContent>
      <remove fileExtension=".json"/>
      <mimeMap fileExtension=".json" mimeType="application/json"  />
    </staticContent>
  </system.webServer>
web.config中的