跨域测试代码 - console 里面直接就可以测试

var xhr = new XMLHttpRequest();
xhr.open("GET", "https://www.baidu.com");
xhr.send(null);
xhr.onload = function(e) {
var xhr = e.target;
console.log(xhr.responseText);
}

Access-Control-Allow-Origin:* 如何写代码才不跨域 axios get

说是不携带cookie,得写个前后台验证一下,为什么我写的 axios.request 就报跨域了。

// withCredentials 表示跨域请求时是否需要使用凭证

withCredentials: false, // default

axios修改origin

https://blog.51cto.com/u_16099164/6619670

第一个坑:

No ‘Access-Control-Allow-Origin’ header

后端解决方案:这一步前端还不需要做啥,后端在响应头中把“Access-Control-Allow-Origin”设置为“*”,这是大家最熟悉的解决方案了。

第二个坑:

登录前的页面一切正常,登录后的页面,也就是需要携带cookie请求的页面,就会出现401报错,即用户没有访问权限,需要进行身份认证,说白了就是没有携带cookie请求后端。

前端解决方案:这是axios的坑,axios发送请求默认不携带cookie,需要前端设置一下。这个是全局配置的axios,每次请求的时候配置也行,但全局更方便一点。

登录后复制

axios.defaults.withCredentials = true;

后端解决方案:

同时,后端也需要配合修改,因为前端设置了withCredentials为true,后端的’Access-Control-Allow-Origin’不允许再使用通配符“”(根据报错的字面意思),否则又会出现跨域问题。跨域报错信息:The value of the ‘Access-Control-Allow-Origin’ header in the response must not be the wildcard ‘’ when the request’s credentials mode is ‘include’.

第三个坑:

前端接收到后端的响应头中有Set-Cookie,但就是没有写入浏览器的cookie中,所以还是无法请求到需要携带cookie的页面。

此时的跨域报错信息:The ‘Access-Control-Allow-Origin’ header has a value that is not equal to the supplied origin. 而且如果前后端运行在同一台电脑上就没有这个问题,如果不在同一台电脑上,比如后端在服务器上,前端在本地,就有这个问题。

跨域测试代码 - console 里面直接就可以测试的更多相关文章

  1. Chrome报错:跨域问题处理( Access-Control-Allow-Origin)_ 用于本地测试的快捷解决方法

    报错提示如下: XMLHttpRequest cannot load http://www.xxxx.com/264/Data/GetScreenInfo. No 'Access-Control-Al ...

  2. 使用JSONP解决跨域问题-代码示例

    前段时间用JSONP解决了跨域问题,现在不用了,把代码思路记下来,今后说不定还用得上. JS代码 //查询公告数据 function recentpost(){ $.getJSON(cmsUrl+&q ...

  3. node - 处理跨域 ( 两行代码解决 )

    1,安装 cors 模块 : npm install cors 2,代码 : var express = require('express') var app = express() var cors ...

  4. Maven打包时过滤测试代码或指定特定的测试类(maven-surefire-plugin)

    1.过滤整个测试代码,可以直接在命令行上指定 mvn clean install -Dmaven.test.skip=true 提示:以上为举例,具体的构建阶段可以自定义,其中maven.test.s ...

  5. spring boot处理跨域请求代码

    @Configuration @WebFilter(filterName = "CorsFilte") public class CorsFilter implements Fil ...

  6. SpringBoot 解决跨域问题代码

    package com.example.demo.gs; import org.springframework.context.annotation.Configuration; import jav ...

  7. jquery ajax jsonp跨域调用实例代码

    今天研究了AJAX使用JSONP进行跨域调用的方法,发现使用GET方式和POST方式都可以进行跨域调用,这里简单分享下,方便需要的朋友 客户端代码 复制代码 代码如下: <%@ Page Lan ...

  8. http与websocket(基于SignalR)两种协议下的跨域基于ASP.NET MVC--竹子整理

    这段时间,项目涉及到移动端,这就不可避免的涉及到了跨域的问题.这是本人第一次接触跨域,有些地方的配置是有点麻烦,导致一开始的不顺. 至于websocket具体是什么意义,用途如何:请百度. 简单说就是 ...

  9. window.opener方法的使用 js跨域

    原文:window.opener方法的使用 js跨域 最近公司网站登陆加入了第三方登陆.可以用QQ直接登陆到我们网站,在login页面A中点QQ登陆时,调用了一个window.open文件打开一个lo ...

  10. window.opener方法的使用 js 跨域

    用到了这个方法: window.opener.location.reload() 与 window.opener.location.href=window.opener.location.href 都 ...

随机推荐

  1. C/C++ 通过HTTP实现文件上传下载

    WinInet(Windows Internet)是 Microsoft Windows 操作系统中的一个 API 集,用于提供对 Internet 相关功能的支持.它包括了一系列的函数,使得 Win ...

  2. 架构设计脱胎换骨!英特尔酷睿Ultra深度解析

    英特尔正式发布了第一代酷睿Ultra处理器平台,也就是首个基于Intel 4制程工艺(7nm)打造的移动级处理器平台,其核心代号为Meteor Lake,产品系列贴标设计也采用了全新方案. 同时在命名 ...

  3. 一次人脸识别ViewFaceCore使用的经验分享,看我把门店淘汰下来的POS机改成了人脸考勤机

    POS软件是什么?你好意思吗,还在用老掉牙的Winform. 门店被淘汰的POS机 销售终端--POS(point of sale)是一种多功能终端,把它安装在信用卡的特约商户和受理网点中与计算机联成 ...

  4. Teams基础功能与会议介绍

    目录 Teams基本功能介绍 活动 聊天 如何查找联系人 如何开启语音或视频通话 如何共享自己的屏幕 如何新建群聊 发送文件的多种方式 快速安排一个会议 重要与紧急的消息 文件 分享的文件 OneDr ...

  5. UVA12467 Secret Word 题解

    题目传送门 前置知识 前缀函数与 KMP 算法 解法 考虑将 \(S\) 翻转后得到 \(S'\),然后就转化为求 \(S'\) 的一个最长子串使得其是 \(S\) 的前缀.使用 KMP 求解即可. ...

  6. burpsuit+adb+逍遥模拟器

    安卓7之后,单纯的将burpsuit的证书导出手动安装到模拟器中已经不行了,app可以只信任指定证书和系统内置的证书,后续用户安装的证书是不生效的,只能想办法装到系统内部 需要将证书通过openssl ...

  7. NC16758 [NOIP2000]单词接龙

    题目链接 题目 题目描述 单词接龙是一个与我们经常玩的成语接龙相类似的游戏,现在我们已知一组单词,且给定一个开头的字母,要求出以这个字母开头的最长的"龙"(每个单词都最多在&quo ...

  8. Java 封装、继承、多态的理解

    更好的阅读体验:Java 封装.继承.多态的理解 1.封装 封装:就是隐藏对象的属性和实现细节,仅对外提供公共访问方式.让使用者知道的才暴露出来,不需要让使用者知道的全部隐藏起来 封装的好处:避免使用 ...

  9. test-02-java 单元测试框架 junit5 入门介绍

    拓展阅读 junit5 系列 基于 junit5 实现 junitperf 源码分析 Auto generate mock data for java test.(便于 Java 测试自动生成对象信息 ...

  10. Ubuntu20.04和22.04离线安装PostgreSQL14

    今天安装 Postgresql14 遇到一个问题, 目标服务器只有内网, 内网提供标准的apt仓库, 但是因为不能连接外网, 所以没法添加第三方仓库, 这样安装pg14就成了问题. 从pg的官网看, ...