thinkphp 设置跨域请求

场景:我的本地网页服务器无法访问本地的接口服务器接口提示一下错误:大致意思是:是一个跨域请求我的没有访问该地址的权限(接口服务器采用的是PHP编写)

XMLHttpRequest cannot load http://localhost/mz/goods/getList. Response to preflight request doesn‘t pass access control check: No ‘Access-Control-Allow-Origin‘ header is present on the requested resource. Origin ‘http://127.0.0.1:8020‘ is therefore not allowed access.

解决方案:

header(‘Access-Control-Allow-Origin: *‘);
header("Access-Control-Allow-Headers: Origin, X-Requested-With, Content-Type, Accept");
header(‘Access-Control-Allow-Methods: GET, POST, PUT‘);

为ajaxReturn 方法设置允许跨域访问的请求头。

参考地址:http://blog.sina.com.cn/s/blog_6751f30b0102w2x1.html,http://stackoverflow.com/questions/20433655/no-access-control-allow-origin-header-is-present-on-the-requested-resource-or

时间: 2024-10-01 02:50:39

thinkphp 设置跨域请求的相关文章

Apache与Nginx设置跨域请求

我们在前端使用代理请求时,要先设置服务器允许跨域请求,下面先来介绍几个常用的配置 (1)Access-Control-Allow-Origin 该字段是必须的.它的值要么是请求时Origin字段的值,要么是一个*,表示接受任意域名的请求. (2)Access-Control-Allow-Credentials 该字段可选.它的值是一个布尔值,表示是否允许发送Cookie.默认情况下,Cookie不包括在CORS请求之中.设为true,即表示服务器明确许可,Cookie可以包含在请求中,一起发给服

设置跨域请求头

res.setHeader("Access-Control-Allow-Origin", "*"); res.setHeader("Access-Control-Allow-Headers", "*"); res.setHeader("Access-Control-Allow-Methods", "GET, POST, PUT, OPTIONS");

apache设置跨域请求

<VirtualHost *:80> DocumentRoot /data/www/test ServerName test.com Header set Access-Control-Allow-Origin * Header set Access-Control-Allow-Credentials true Header set Access-Control-Allow-Headers "Origin, X-Requested-With, Content-Type, Accept

java跨域请求的方式

1.基于servlet和过滤器的方式 /** * 设置跨域请求相关参数的过滤器 * @Author LQY * @Date 2018/12/3 */ @WebFilter("/*") public class MyFilter implements Filter { @Override public void init(FilterConfig filterConfig) throws ServletException { } @Override public void destroy

axios跨域请求报错:Request header field content-type is not allowed by Access-Control-Allow-Headers in preflight response.

在做项目时,用到axios,数据用post提交时,老是报错,错误提示为: 1 Access to XMLHttpRequest at 'http://127.0.0.1:3000/api/add' from origin 'http://localhost:8080' has been blocked by CORS policy: Request header field content-type is not allowed by Access-Control-Allow-Headers i

用iframe设置代理解决ajax跨域请求问题

面对ajax跨域请求的问题,想用代理的方式来解决这个跨域问题.在服务器端创建一个静态的代理页面,在客户端用iframe调用这个代理 今天在项目中需要做远程数据加载并渲染页面,直到开发阶段才意识到ajax跨域请求的问题.于是想用代理的方式来解决这个跨域问题. 什么是跨域?简单的来说,出于安全方面的考虑,页面中的JavaScript无法访问其他服务器上的数据,即"同源策略".而跨域就是通过某些手段来绕过同源策略限制,实现不同服务器之间通信的效果. 方案:在服务器端创建一个静态的代理页面,在

在vue中使用axios实现跨域请求并且设置返回的数据的格式是json格式,不是jsonp格式

在vue中使用axios实现跨域请求 需求分析:在项目中需要抓取qq音乐的歌曲列表的数据,由于要请求数据的地址url=https://c.y.qq.com/splcloud/fcgi-bin/fcg_get_diss_by_tag.fcg.从qq音乐的官网上可以看到该请求的请求头中的referer中的域名是y.qq.com(发送请求页面的域名),而host的域名是c.y.qq.com(被请求页面的域名),由于两者不一样,所以不能通过前端直接发送请求给qq服务器去拿数据.这时候需要服务器做一个代理

跨域请求设置withCredentials(转)

最近在做运动城项目,这一个项目下面有多个子项目,如主数据项目,pos项目等.主数据项目的域名为www.topmall.com,POS项目的域名为pos.topmall.com.即两个项目的主域名相同,子域名不相同. 我们的登陆认证是放在主数据项目的,即进入POS项目如果检测未登陆,是先要调用主数据的一个登陆接口登陆后才可以访问的.这时候跨域问题就出现了,进入POS项目之后跳出登陆框,输入用户名密码请求主数据的http://www.topmall.com/signin进行登陆,看到返回的respo

跨域请求设置说明 - Stone.Zhou

原文引用https://www.dazhuanlan.com/2019/08/26/5d632d8c51389/ CORS把HTTP请求分成两类,不同类别按不同的策略进行跨域资源共享协商. 简单跨域请求. 当HTTP请求出现以下两种情况时,浏览器认为是简单跨域请求: 1). 请求方法是GET.HEAD或者POST,并且当请求方法是POST时,Content-Type必须是application/x-www-form-urlencoded, multipart/form-data或着text/pl