uni-app(vue)在thinkphp下的跨域问题解决方案

最简单的一种,后端和前端分别做处理。

前端(即uni-app或者基于vue的H5):在请求中将Content-Type设置为'application/x-www-form-urlencoded,Uni-app如下(Content-Type注意大小写):

uni.request({
            url:abc.cn,
            method:'POST',
            header: {'Content-Type': 'application/x-www-form-urlencoded'},
            data:params,
            success:function(res) {
                // do something
            }
 })

后端(基于thinkphp 5.0):在根目录的public目录下,在index.php入口文件里加入:

// [ 应用入口文件 ]
header('Access-Control-Allow-Origin: *');
header("Access-Control-Allow-Headers: Origin, X-Requested-With, Content-Type, Accept");
header('Access-Control-Allow-Methods: GET,POST');

// 定义应用目录
define('APP_PATH', __DIR__ . '/../application/');
// 加载框架引导文件
require __DIR__ . '/../thinkphp/start.php';

注意:header('Access-Control-Allow-Origin: *')里的*为通配符,代表允许所有域名跨域调用,安全性很低。实际项目请根据访问地址允许有限域名访问,如:

header('Access-Control-Allow-Origin: http://xyz.com');

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值