悬而未决:奇怪的不允许跨域CORS policy的问题

ops/2024/10/18 16:54:38/

我在本地HBuilderX中进行预览写好的前端网页,它里面用了ajax访问了远程服务器的后端API网址,不出意外地报不允许跨域访问的错了:Access to XMLHttpRequest at ‘http://xxx.com/MemberUser/login’ from origin ‘http://mh.com’ has been blocked by CORS policy: No ‘Access-Control-Allow-Origin’ header is present on the requested resource.

因为我后端用的是PHP,查了一下网上的资料,说是可以直接使用header输出Access-Control-Allow-Origin:*就行。但我加上后,发现浏览器中仍然没有这个header属性!但我用ApiFox来访问它,却是有这个属性!

因为我用的是nginx做反向代理到Apache+PHP-FPM服务器,所以我就在nginx配置文件中又明确增加这个header输出。好家伙,这下用ApiFox来访问它,直接有了两条一样的Access-Control-Allow-Origin:*。用浏览器也有了正常的一条。这我就奇怪了,上面这个现象说明nginx是没有过滤掉这个header的,应该是浏览器过滤掉了php输出的header,但它为什么又没有过滤掉nginx输出的这个header呢? 我想来想去,可能是因为用的PHP框架中我没办法把这个header输出到网页内容的头部区?

在NginX中增加了header输出,虽然解决了跨域的报错,但还出来一个新问题,就是用$.post()访问的时候后端ThinkPHP检测它又变成了非AJAX方式了!经过调试,发现原来是JQuery的$.post()也有跨域的问题,它会自动把跨域的访问去掉X-Requested-With:XMLHttpRequest这个header,导致服务器不再认可它是AJAX访问!


http://www.ppmy.cn/ops/89473.html

相关文章

江科大/江协科技 STM32学习笔记P17

文章目录 一、TIM输入捕获输入捕获与输出比较的关系频率测量测频法测周法 输入捕获的电路异或门的执行逻辑 输入捕获通道主从触发模式输入捕获基本结构PWMI基本结构输入捕获模式测频率main.c 输入捕获模式测占空比main.c 一、TIM输入捕获 输入捕获与输出比较的关系 在输出比较中…

RabbitMQ高级特性 - 非持久化 / 持久化(交换机、队列、消息)

文章目录 RabbitMQ 持久化机制概述实现非持久化(交换机、队列、消息)实现持久化(交换机、队列、消息) RabbitMQ 持久化机制 概述 前面讲到了 生产者消息确认机制 和 消费者消息确认机制,保证了消息传输的可靠性&#…

安装Docker以及安装过程中的错误解决

一、纯享版教程+操作截图 环境:centOs 7 FinalShell !!!此教程针对第一次安装docker的友友,如果已经安装过且报错的朋友,请移步报错合集。 1.卸载旧版本(无论是否安装过都建议执…

Tooltip 文字提示

在偶然维护前端开发时,遇到页面列表中某个字段内容太长,且该字段使用了组件显示,导致不能使用纯文本得那个省略号代替显示得css样式效果,如下 所以只能另辟溪路了, 1、最开始想到是使用横向滚动得效果来实现&#xff…

第一阶段面试问题(前半部分)

1. 进程和线程的概念、区别以及什么时候用线程、什么时候用进程? (1)线程 线程是CPU任务调度的最小单元、是一个轻量级的进程 (2)进程 进程是操作系统资源分配的最小单元 进程是一个程序动态执行的过程,包…

成为大佬之路--linux软件安装使用第000000040篇-linux操作文件和文件夹常用命令

1.创建文件 touch 文件名 下面命令创建了AscendKing.txt文件 然后过滤只要包含AscendKing的文件和文件夹 [rootVM-24-14-centos opt]# touch AscendKing.txt [rootVM-24-14-centos opt]# ls -l AscendKing* -rw-r--r-- 1 root root 0 7月 31 23:13 AscendKing.txt [rootVM-…

Redis高可用之持久化,以及reids的性能管理

一、redis高可用: 在集群当中有一个非常重要的指标,提供正常服务的时间的百分比(365天)99.9% redis的高可用含义更加宽泛,正常服务是指标之一,数据容量的扩展,数据的安全性 在redis中实现高可…

hash表如何形成,hash函数如何计算,什么是hash冲突 如何解决 ,Golang map的底层原理及扩容机制

散列表 散列表(hash表):根据给定的关键字来计算出关键字在表中的地址的数据结构。也就是说,散列表建立了关键字和 存储地址之间的一种直接映射关系。 问题:如何建立映射管血 散列函数:一个把查找表中的关键字映射成该关键字对应…