ajax jsonp跨域处理问题

客户端 html

$.ajax({

        type : "get",
        async:false,
        dataType : "jsonp",
        jsonp: "jsoncallback",//服务端用于接收callback调用的function名的参数
        jsonpCallback:"success_jsonpCallback",//callback的function名称
        url:‘http://www.apps.com/netWork.php‘,
        timeout:1000,
        success:function(statu){
            data = $.parseJSON(statu);
            //console.log(data);
        },
        error: function(statu){
           // alert(‘error‘);
            data = $.parseJSON(statu);
            console.log(data);
        }
});

function success_jsonpCallback(statu){
console.log(statu);
}

 

php

<?php
header(‘Content-Type:text/html;Charset=utf-8‘);
$arr = array(
    "statu" => 1,
    "info" => ‘连接成功‘

);
echo $_GET[‘jsoncallback‘] . "(".json_encode($arr).")";  

结果 object

info: "连接成功"
statu: 1

注意

ajax的回调函数 为单独指定的回调函数

而不是ajax success 的回调 这点特别注意

时间: 2024-11-15 20:51:00

ajax jsonp跨域处理问题的相关文章

JQuery+ajax+jsonp 跨域访问

Jsonp(JSON with Padding)是资料格式 json 的一种“使用模式”,可以让网页从别的网域获取资料. 关于Jsonp更详细的资料请参考http://baike.baidu.com/view/2131174.htm,下面给出例子: 一.客户端 Html代码   <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.

jquery ajax jsonp跨域调用实例代码

今天研究了AJAX使用JSONP进行跨域调用的方法,发现使用GET方式和POST方式都可以进行跨域调用,这里简单分享下,方便需要的朋友 客户端代码 复制代码 代码如下: <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WebForm1.aspx.cs" Inherits="WebApp.WebForm1" %><!DOCTYPE html P

ajax jsonp跨域

js跨域问题是指:js在不同的域之间进行数据传输或通信,比如用ajax向一个不同的域请求数据,或者通过js获取页面中不同域的框架中(iframe)的数据.只要协议.域名.端口有任何一个不同,都被当作是不同的域. js跨域参考:http://www.cnblogs.com/2050/p/3191744.html 可以通过jsonp实现js跨域,但是获取的数据必须是脚本文件,例如json. 下面介绍jquery.ajax方法 jQuery.ajax(url,[settings]);url是必填的,其

你不知道的jQuery Item11 -- ajax jsonp跨域方法详解

文章从JSON和JSONP区别开始讲起,用实例来对比他们之间的不同之处,然后详细讲解了jQuery中的ajax jsonp的使用并给出了示例及详细参数说明. 1.JSON和JSONP JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,用于在浏览器和服务器之间交换信息. JSONP(JSON With Padding),就是打包在函数调用中的的JSON(或者包裹的JSON),你要跨域请求别人的东西,你肯定要包裹起来,不要污染了别人的东西,把Json数据包裹

AJAX的跨域与JSONP

AJAX的跨域与JSONP 什么是AJAX的跨域请求 出于安全的考虑,如果你要从www.a.com通过Ajax来请求另外一个网站www.b.com的内容,浏览器是不允许你这样做的(不理解这里的安全是指什么?想想如果没有这个限制的话,黑客可以做些什么).那什么样的情况下算是跨域?域名不同那当然算是跨域了,例如a.com向b.com发送请求,这当然就是跨域了,不允许的.不过子域名不同(例如sub.a.com向www.a.com发送请求)甚至是同域名不同端口(例如a.com:80向a.com:8080

原生JS封装Ajax插件(同域&amp;&amp;jsonp跨域)

抛出一个问题,其实所谓的熟悉原生JS,怎样的程度才是熟悉呢? 最近都在做原生JS熟悉的练习... 用原生Js封装了一个Ajax插件,引入一般的项目,传传数据,感觉还是可行的...简单说说思路,如有不正确的地方,还望指正^_^ 一.Ajax核心,创建XHR对象 Ajax技术的核心是XMLHttpRequest对象(简称XHR),IE5是第一款引入XHR对象的浏览器,而IE5中的XHR对象是通过MSXML库中的一个ActiveX对象实现的,因此在IE中可能有3个版本,即MSXML2.XMLHttp.

Ajax+Spring MVC实现跨域请求(JSONP)JSONP 跨域

JSONP原理及实现 接下来,来实际模拟一个跨域请求的解决方案.后端为Spring MVC架构的,前端则通过Ajax进行跨域访问. 1.首先客户端需要注册一个callback(服务端通过该callback(jsonp)可以得到js函数名(jsonpCallback)),然后以JavaScript语 法的方式,生成一个function 2.接下来,将JSON数据直接以入参的方式,放置到function中,这样就生成了一段js语法文档,返回给客户端. 3.最后客户端浏览器动态的解析script标签,

笔记-Ajax[4]-JSONP跨域获取数据。

JS的跨域:跨域名获取数据,a域名获取b域名中的数据. 解决跨域获取数据的方法也叫JSONP(JSON and Padding) JSONP方法: 1:服务器代理:XMLHttpRequest代理文件 2:script标签:jsonp(常用);//利用script标签的src引入外部文件的功能,src能够引入任何的文件的类型 3:location.hash方式:iframe 4:window.name方式 5:flash方式 6:html5的postMessage方式 例子:百度输入数据下拉框提

tp5+ajax 实现jsonp跨域

好久没更新博客了,今天加了会班,领导布置了一个需求,由于上线网站是编辑器开发的,这就需要混合开发了,需求模块有一个模块需要和我已经布置好阿里云的另一个域名交互开发,也就是说我用tp5框架搭建了A后台 需要和另一个域名的模块进行对接,我首先选择了ajax交互跨域到我A后台的方法里,注意 ajax的type 一定要看好,本人就进坑了,因为jsonp是get传参,所以A后台ajax方法接受一定要用get来,然后再tp5后台 返回success 用 return jsonp($data),前端ajax常