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

    }
}
相关推荐
笨笨狗吞噬者1 小时前
维护 uniapp 小程序端近一年,我想拉一个开发者交流群
前端·程序员·uni-app
南梦浅1 小时前
全过程步骤(从零到高可用企业网络)
开发语言·网络·php
xiangpanf2 小时前
Laravel 9.X新特性全解析
php·laravel
xiangpanf2 小时前
Laravel与ThinkPHP框架深度对比
php·laravel
hongtianzai2 小时前
Laravel7.x十大核心特性解析
java·c语言·开发语言·golang·php
ZHOUPUYU2 小时前
从缓存到消息队列的全面应用,PHP与Redis深度实战
redis·缓存·php
ZHOUPUYU3 小时前
PHP性能分析与调优:从定位瓶颈到实战优化
开发语言·后端·html·php
Du_chong_huan4 小时前
1.6 面对攻击的网络 | 《计算机网络:自顶向下方法》精读版
网络·安全·php
hongtianzai4 小时前
Laravel 10.x重磅更新:全新特性速览
php·laravel
hongtianzai4 小时前
Laravel8.x核心特性全解析
java·c语言·开发语言·golang·php