在调用JSONP中发送参数不在服务器上工作

时间:2013-10-25 17:45:12

标签: jquery ajax asp.net-mvc iis

您好我有问题:
当我使用JSONP进行ajax调用我的本地计算机一切都很好,但当我在我的服务器上运行时它显示错误
下面我将展示错误的代码和详细信息:

$.ajax({

                data: { info: JsonString },
                contentType: 'application/json; charset=utf-8',
                dataType: "jsonp",
                /*url: jsondata.Ruta + "/LanzarAplicativo/",*/
                url: 'http://localhost:1143/contenido/LanzarAplicativo/',
                success: function (result) {
                    console.log(result);
                },
                error: function (xhr, status, error) {
                    //some code
                }
            });

这是ajax

中指定的方法
    [HttpGet]
    public ActionResult LanzarAplicativo(string info)
    {
        Informacion info;
        info = JsonConvert.DeserializeObject<Informacion>(info);

        Session["miContexto"] = informacion ;

        //some code

        return View(); 
    }

当我这样做但是更改ajax中的url(在我的IIS服务器的url中)时,Chrome控制台会抛出以下错误:

Failed to load resource: the server responded with a status of 404 (Not Found) http://someUrlmyserver/Plataform/Demo/Contenido/LanzarAplicativo/…%2C%2232%22%3A%22calipso%22%2C%2233%22%3A%22summer%22%7D%7D%7D%7D&_=1382717706500

由于ajax调用中附带的参数数量,此URL非常长。

我认为问题可能是由于网址的大小,但问题也应该是因为我在本地主机中运行

有什么想法吗?

感谢

1 个答案:

答案 0 :(得分:0)

尝试将url用作/ controller / action而不是完整的url:

$.ajax({
dataType: "jsonp",
url: '/contenido/LanzarAplicativo/',
..
});

而是如果从控制器返回一个视图,则可以返回一个bool(true)。