使用ASP.net Handler动态创建JS文件

时间:2012-06-07 07:07:30

标签: javascript asp.net

我有很多客户端我想给他们脚本所以我想根据他们的Cusotmer ID创建JS文件。 所以我可以返回并直接在客户端执行。 客户可以是PHP,Html,ASP.net

中的任何人

问题是,当我浏览此链接时,它会给我JS字符串,但在客户端,此脚本不会像执行测试那样执行警报此警报未在客户端显示


客户

<head>
    <script src="http://localhost:12604/JSCreator/Handler.ashx?CustomerID=123" type="text/javascript"></script>
    <title></title>
</head>

处理程序文件

public class Handler : IHttpHandler
{
    public void ProcessRequest(HttpContext context)
    {
        string CustomerId = context.Request["CustomerId"].ToString();
        string jscontent = JSFileWriter.GetJS(CustomerId); // This function will return my custom js string

        context.Response.ContentType = "text/javascript";
        context.Response.Write(jscontent);
    }

    public bool IsReusable
    {
        get
        {
            return false;
        }
    }
}

1 个答案:

答案 0 :(得分:7)

ContentType应为application/javascript

public void ProcessRequest(HttpContext context)
{
    string CustomerId = context.Request["CustomerId"].ToString();
    string jscontent = JSFileWriter.GetJS(CustomerId); // This function will return my custom js string

    context.Response.ContentType = "application/javascript";
    context.Response.Write(jscontent);
}