对于获取其他域的请求,jQuery Ajax请求失败

时间:2013-01-25 16:37:40

标签: ajax jquery

我想向其他域发送请求 http://ccv.viatelecom.com/services/?item=viacall&aid=XXXX&gid=XXXX&sid=XXXX&&num=XXXXXX

我使用了Ajax请求,如下所示:

$.ajax({
                type: "GET",
                url:'http://ccv.viatelecom.com/services/?item=viacall&aid=XXXX&gid=XXXX&sid=XXXX&&num=XXXXXX',
                success:function(data){
                alert(data);

                },
                error:function(XMLHttpRequest, textStatus, errorThrown){
alert("XMLHttpRequest="+XMLHttpRequest.responseText+"\ntextStatus="+textStatus+"\nerrorThrown="+errorThrown);
                    }

            });

但它没有进入成功功能,警报错误是:

XMLHttpRequest=
textStatus=error
errorThrown=

如果我写了相同的url地址栏,则显示消息不在Ajax请求中。

这是发送请求的正确方式还是我还缺少其他方式?

1 个答案:

答案 0 :(得分:0)

您无法执行跨域ajax调用。

解决此问题

方法1

<强>的JavaScript

创建一个功能

function getMyData(data) {
    alert(data);
    //Do the magic with your data
}

服务器端

在服务器端将数据包装在函数语法

getMyData("Enter your data here");

<强>的JavaScript

然后创建一个脚本标记并添加一个指向跨域页面的链接

 <script type="text/javascript"
         src="cross ref url">
 </script>

供参考:wikipedia

方法2

另一个选项是在您的域上创建代理。即在您的域中创建一个页面,该页面在内部调用跨域页面并将相同的数据返回给您的Ajax调用。