uni-app h5对接 thinkphp5接口跨域

uni-app h5对接 thinkphp5接口跨域

问题描述

  • 请求接口 提示
bash 复制代码
Access to XMLHttpRequest at 'http://*******' from origin 'http://localhost:8091' has been blocked by CORS policy: Response to preflight request doesn't pass access control check: It does not have HTTP ok status.

解决方案

  • application/tags.php
php 复制代码
<?php
return [
    // 应用初始化
    'app_init'     => [
        'app\\common\\behavior\\CORS'
    ],

];
  • application/common/behavior/CORS.php
php 复制代码
<?php
namespace app\common\behavior;

use think\Response;
class CORS
{
    public function appInit()
    {
        // Allow from any origin
        if (isset($_SERVER['HTTP_ORIGIN'])) {
            // Decide if the origin in $_SERVER['HTTP_ORIGIN'] is one
            // you want to allow, and if so:
            header("Access-Control-Allow-Origin: {$_SERVER['HTTP_ORIGIN']}");
            header('Access-Control-Allow-Credentials: true');
            header('Access-Control-Max-Age: 86400');    // cache for 1 day
        }

        // Access-Control headers are received during OPTIONS requests
        if ($_SERVER['REQUEST_METHOD'] == 'OPTIONS') {

            if (isset($_SERVER['HTTP_ACCESS_CONTROL_REQUEST_METHOD']))
                // may also be using PUT, PATCH, HEAD etc
                header("Access-Control-Allow-Methods: GET, POST, OPTIONS");

            if (isset($_SERVER['HTTP_ACCESS_CONTROL_REQUEST_HEADERS']))
                header("Access-Control-Allow-Headers: {$_SERVER['HTTP_ACCESS_CONTROL_REQUEST_HEADERS']}");

            exit(0);
        }

    }
}
相关推荐
独隅6 小时前
CodeX + Visual Studio Code 联动的全面指南
开发语言·php
爱吃小白兔的猫6 小时前
LPA算法详解:一种近线性时间的图社区发现方法
开发语言·php
西洼工作室8 小时前
个人开发者接入阿里云号码认证服务AliCloud-NirvanaPns实现一键登录
python·阿里云·uni-app·全栈·认证授权
棒棒的唐8 小时前
在国内安装yii2新项目由于网络超时安装失败的解决办法
php·yii2
xinhuanjieyi12 小时前
Deprecated: Directive ‘track_errors‘ is deprecated in Unknown on line 0
php
棒棒的唐14 小时前
Composer国内镜像配置全指南:加速依赖下载
php·composer
2501_9160088914 小时前
ChatGPT前端开发学习指南:Visual Studio Code与谷歌浏览器安装配置详解
ide·vscode·ios·小程序·uni-app·编辑器·iphone
神净讨魔76514 小时前
【php】老旧PHP项目(PHP 5.6)本地环境搭建与踩坑记录
php
在角落发呆15 小时前
DTU 数据转发服务器:工业物联网的隐形桥梁
开发语言·php
古城小栈17 小时前
宝塔面板部署 ThinkPHP6 后端
php