在Asp.net空网站中,如何更改“Web.config”使内容(.js)文件在浏览器中显示而不是下载

时间:2015-03-04 19:23:24

标签: javascript html asp.net iis-7

我的Web.config

<system.webServer>
    <staticContent>
      <mimeMap fileExtension=".json" mimeType="application/json" />
    </staticContent>
    <httpProtocol>
      <customHeaders>
        <add name="Content-Disposition" value="inline" />
      </customHeaders>
    </httpProtocol>

我尝试构建一种html url是一个.js文件,IE浏览器总是强迫我下载它 其他浏览器只显示内容 我可以配置Web.config以强制每个浏览器在网页中显示.js内容吗? 感谢

Asp.net 4.5 IIS在VS2013中表达

2 个答案:

答案 0 :(得分:0)

让我们采取另一种方法。我们将加载JSON并将其显示在HTML页面中。

ASPX

<pre id="JsonViewer" runat="server">
</pre>

C#背后的代码

protected void Page_Load(object sender, EventArgs e)
{
    var url = "~" + Request.QueryString["JsonPath"]; //ex, Default.aspx?JsonPath=/Data/file.json
    var json = File.ReadAllText(Server.MapPath(url));
    JsonViewer.InnerText = json;
}

答案 1 :(得分:0)

我们也可以使用通用处理程序(.ashx)来完成此操作。我没有测试过这个。

public void ProcessRequest(HttpContext context)
{
    var url = "~" + context.Request.QueryString["JsonPath"]; //ex, JsonHandler.ashx?JsonPath=/Data/file.json
    var json = File.ReadAllText(context.Server.MapPath(url));
    context.Response.ContentType = "text/plain";
    context.Response.Write(json);
}