重命名JSONP的回调参数

时间:2013-03-05 12:39:02

标签: jsonp servicestack

有没有办法重命名包含回调函数名称的查询字符串参数?说,我有一个遗产应用程序,我无法访问,我希望它切换到ServiceStack,但应用程序使用“函数”查询字符串参数,而SS期望“回调”。

1 个答案:

答案 0 :(得分:4)

您可以使用AppHost.Configure()内的响应过滤器执行此操作:

ResponseFilters.Add((req, res, dto) =>
    {
        var func = req.QueryString.Get("function");
        if (!func.isNullOrEmpty())
        {
            res.AddHeader("Content-Type", ContentType.Html);
            res.Write("<script type='text/javascript'>{0}({1});</script>"
                .FormatWith(func, dto.ToJson()));
            res.Close();
        }
    });