• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

PHP后台处理jQueryAjax跨域请求问题—xxwasnotcalled解决办法

原作者: [db:作者] 来自: [db:来源] 收藏 邀请
// 前台代码
$.ajax({
    url: 'http://www.ushark.net/home/save_trial_apply',
    dataType: 'jsonp',
    processData: false,
    data: $('.layui-layer-content #trialFormInfo').serialize(),
})
.done(function(data) {
    layer.msg('申请成功');
})
.fail(function(jqXHR, textStatus, errorThrown) {
    layer.msg('申请失败,请重试!');
})
.always(function(jqXHR, textStatus, errorThrown) {
    layer.msg('申请成功');
});
// 后台代码(CI框架)
public function save_trial_apply()
{
    $callback = $this->input->get('callback', true);
    echo $callback, '(', json_encode($_GET), ')'; // 关键代码
}

 

// 后台正确的返回结果如下:

 

二、非 jsonp 允许跨域 cookie

  后台设置 cookie 的 sameSite 属性为 None 时,必须开启 https 请求,否则跨域 cookie 会失败

  1、前端代码

$.ajax({
    url: 'https://192.168.0.123:81/api/users/logout',
    type: 'POST',
    dataType: 'json',
    crossDomain: true,
    xhrFields: {
        withCredentials: true,
    },
    data: {
        // username: 'www.ushark.net',
        // userpasswd: '92d7ddd2a010c59511dc2905b7e14f64',
    },
})
.done(function(data) {
    console.log(data);
})
.fail(function(xhr, textStatus, errorThrown) {
    console.log(xhr);
});

 

  2、后台php

$origin = $this->request->getServer('HTTP_ORIGIN') ?: '*';

header('Access-Control-Allow-Origin: ' . $origin);
header('Access-Control-Allow-Methods: POST, GET, OPTIONS');
header('Access-Control-Allow-Credentials: true');
header('Access-Control-Allow-Headers: Origin, X-Requested-With, Content-Type, Accept, Cookie, Authorization');

if (strtoupper($this->request->getServer('REQUEST_METHOD')) === 'OPTIONS') {
    header('HTTP/1.1 200 OK');
    exit();
}

 


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
php中curl安装——windows下发布时间:2022-07-10
下一篇:
php-nginx超时时间过短导致的post失败发布时间:2022-07-10
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap