php thinkphp 接口跨域问题 设置了headers 还是报错的解决方案 OPTIONS 跨域

if($_SERVER[‘REQUEST_METHOD‘] == ‘OPTIONS‘){
    header("Access-Control-Allow-Origin: *");
    header("Access-Control-Allow-Headers: Origin, X-Requested-With, Content-Type, Accept, Authorization");
    header(‘Access-Control-Allow-Methods: GET, POST, PUT,DELETE,OPTIONS,PATCH‘);
    exit;
}
//上面的代码很关键   问题就出在上面这里
header("Access-Control-Allow-Origin: *");
header("Access-Control-Allow-Headers: Origin, X-Requested-With, Content-Type, Accept, Authorization");
header(‘Access-Control-Allow-Methods: GET, POST, PUT,DELETE,OPTIONS,PATCH‘);
x

1


2

if($_SERVER[‘REQUEST_METHOD‘] == ‘OPTIONS‘){

3

    header("Access-Control-Allow-Origin: *");

4

    header("Access-Control-Allow-Headers: Origin, X-Requested-With, Content-Type, Accept, Authorization");

5

    header(‘Access-Control-Allow-Methods: GET, POST, PUT,DELETE,OPTIONS,PATCH‘);

6

    exit;

7

}

8

//上面的代码很关键   问题就出在上面这里

9

header("Access-Control-Allow-Origin: *");

10

header("Access-Control-Allow-Headers: Origin, X-Requested-With, Content-Type, Accept, Authorization");

11

header(‘Access-Control-Allow-Methods: GET, POST, PUT,DELETE,OPTIONS,PATCH‘);

原文地址:https://www.cnblogs.com/tolingsoft/p/12571660.html

时间: 2024-10-12 00:05:30

php thinkphp 接口跨域问题 设置了headers 还是报错的解决方案 OPTIONS 跨域的相关文章

ThinkPHP pdo连接Oracle的配置写法,提示报错

'DB_TYPE' => 'pdo', // 数据库类型 'DB_USER' => 'user101', // 用户名 'DB_PWD' => '[email protected]#$%', // 密码 'DB_PREFIX' => 'TB_', // 数据库表前缀 'DB_DSN' => 'oci:dbname=127.0.0.1:1158/orcl;charset=utf8', ThinkPHP 3.2.2 连接Oracle 的配置写法,结果提示内容: 由于目前PDO暂时

客户端ajax请求为实现Token验证添加headers后导致正常请求变为options跨域请求解决方法

客户端为了实现token认证,通过Jquery的ajaxSetup方法全局配置headers: 全局配置headers后会导致部分不需要token认证的请求变为options请求,导致跨域访问.报错信息如下: CORS概念 支持CORS请求的浏览器一旦发现ajax请求跨域,会对请求做一些特殊处理,对于已经实现CORS接口的服务端,接受请求,并做出回应. 有一种情况比较特殊,如果我们发送的跨域请求为"非简单请求",浏览器会在发出此请求之前首先发送一个请求类型为OPTIONS的"

ASP.NET MVC 3 入门级常用设置、技巧和报错

1.ASP.NET MVC 3 如何去除默认验证 这个默认验证是在web.config配置文件中设置的    <add key="ClientValidationEnabled" value="true"/>设置为false就行了,    这个是去掉所有model的默认验证,然后你可以在model中加上自己的验证,这样哪些属性需要验证,哪些不需要 就看你自己了 示例代码: publicclass Movie{publicint ID { get; set

设置background属性使用selector的时候内置?attr报错的解决方案

当我们设置background属性的时候可以设置background="@color/black" 也可以设置 background="@drawable/selector" 然后selector我们可以这样设置 <?xml version="1.0" encoding="utf-8"?> <selector xmlns:android="http://schemas.android.com/apk

域用户执行金蝶K/3报错解决方法

自从上星期测试加域意外将公司考勤系统整出事后,就再也不敢在物理机测试了. 装好虚拟机和装好金蝶K/3系统后,被这条报错信息折腾了好几天,一方面是不熟悉该软件,另一方面是几乎搜不到相关的文章. 一.问题 环境:域服务器*1,K3服务器*1,客户端加入域,K3服务器未加. 报错信息:“无法创建K/3中间层原件,请确定中间层组件配置正确或当前用户拥有相关许可权后重试.” 二.解决 1.本地用户配置文件迁移至域用户,该操作的必要性不用多说 例:临时域用户tmp,本地用户user1,域用户test ● 将

thinkphp 5.0 lnmp环境下 无法访问,报错500(public目录)

两种方法: 1.修改fastcgi的配置文件 /usr/local/nginx/conf/fastcgi.conf fastcgi_param PHP_ADMIN_VALUE "open_basedir=$document_root/../:/tmp/:/proc/"; 2.这个时候需要在php.ini下面添加如下内容 注: xxx.abczn.com 替换成你对应的域名和目录 [HOST=xxx.abczn.com]open_basedir=/home/wwwroot/xxx.abc

在接口的实现类里使用@Override注解报错

问题分析 @Override注解用来检测子类对父类或接口的方法的重写是否正确,但有一次我在Eclipse里对接口的实现类里使用@Override注解却报错,不过在父类的子类里使用该注解却是正常的. 百度了下才知道原来这是jdk1.5时的一个bug,在1.6时已经被修复:那么问题来了,我使用的jdk是1.8,为什么会报这个错误?明明之前也在接口的实现类里用过该注解,却没问题.由于Eclipse经常抽风,我怀疑是Eclipse的问题,经过排查确实如此,该项目使用的jdk版本不知道为什么变成了jdk1

Unity 解决设置ModelImporter.ClipAnimation maskType 报错

今天想要用代码修改Fbx导入动画的设置,但是ModelImporter.clipAnimations设置maskType为Create from model后一直有报错,无奈自己想了个解决办法. 由于我们动画采用同一套骨骼,所以maskType设置完成后动画meta文件中transformMask内容相同, 所以直接从meta文件入手,修改了动画meta文件中transformMask 与maskType的内容,再切换回unity发现设置成功,可以使用. 还有个问题是修改时transformMa

Android为textView设置setText的时候报错

一.我的代码如下:就是我textView设置值 if (list != null) { for (Student stu : list) { //如果一下子赋值的话是不正确的 tv_name.setText(stu.getName()); tv_sex.setText(stu.getSex()); tv_age.setText(stu.getAge()); } } 报出错误: 04-04 08:56:33.950: W/ResourceType(23332): No package identi