出于对安全问题的考虑,Ajax应用中,浏览器默认是不支持跨域调用的。
使用实例:
客户端的js程序:
注意这里调用的地址中jsoncallback=?是关键的所在!其中,符号会被Query自动替换成其他的回调方法的名称,具体过程和原理我们这里不理 会。我们关心的是jsoncallback=?起什么作用了?原来jsoncallback=?被替换后,会把方法名称传给服务器。我们在服务器端要做什 么工作呢?服务器要接受参数jsoncallback,然后把jsoncallback的值作为JSON数据方法名称返回,比如服务器是php,我们会这 样做
服务器端的程序:
我们要注意两点:
1、 在请求地址里加上参数 jsoncallback=?
2、在服务端程序里把jsoncallback的值和数据一起返回,如 $_GET['jsoncallback'].'('.$msg.')';