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);
        }

    }
}
相关推荐
haerapi2 小时前
RAPTOR 树不是把文档简单分组:递归聚类的层级检索
数据挖掘·php·聚类
m0_380743872 小时前
PHP 8.3 缓存清除不生效怎么排查
开发语言·php
m0_380743874 小时前
PHP7.3和7.2字符串功能有什么不同
开发语言·php
m0_380743875 小时前
PHP 8.4的新语法怎么用才规范
开发语言·php
m0_380743878 小时前
PHP 8.3 接口返回数据为空怎么排查
开发语言·php
m0_380743879 小时前
PHP7.0字符串在Docker怎么用
开发语言·php
LeoCrawls9 小时前
Python 读取 JSON 常见报错排查,附完整处理函数
python·json·php
一叶飘零晋12 小时前
GPT-6 Luna 批量调用实战指南
服务器·gpt·php
程序鉴定师13 小时前
2026年深圳小程序/App开发公司技术选型指南:从架构设计到交付标准全维度评估
java·小程序·uni-app·php·objective-c
m0_3807438714 小时前
PHP7.1项目升级到8.3报错怎么解决
开发语言·php