jquery使用jsonp跨域请求问题

test.html

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
< meta  charset = "utf-8" >
< script  src = "http://cdn.bootcss.com/jquery/1.11.1/jquery.min.js" ></ script >
< script >
     function jsonpCallback(){
         alert('jsonpCallback');
     }
     $(document).ready(function(){
         $.ajax({ 
             url: "http://127.0.0.1/jsonp.php", 
             data: {username:"admin", password: "admin"},
             dataType: "jsonp",
             jsonp: "callback",
             success: function(data){
                 alert(JSON.stringify(data));
             },  
             error:function(XHR, textStatus, errorThrown){
                 alert('error: ' + errorThrown);
             }
         });
     });
</ script >


jsonp.php

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
<?php
if  (! empty ( $_SERVER [ 'HTTPS' ]) && ( 'on'  ==  $_SERVER [ 'HTTPS' ])) {
     $uri  'https://' ;
else  {
     $uri  'http://' ;
}
$uri  .=  $_SERVER [ 'HTTP_HOST' ]. $_SERVER [ 'REQUEST_URI' ];
     
//获取jsonp回调函数的函数名,即url中callback=后面的值
$jsonp_callback  $_GET [ 'callback' ]; 
if ( $_GET [ 'username' ] ==  'admin'  &&  $_GET [ 'password' ] ==  'admin' ){
     $data  array ( 'msg' => '登录成功' );
} else {
     $data  array ( 'msg' => '用户名或密码错误' );
}
$json  = json_encode( $data );
//返回jsonp的回调函数名和参数
echo  $jsonp_callback . '(' . $json . ')' ;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值