1.生成工程文件
2.安装 express
3.新增app1.js,开启服务器1 端口:3001
4.新增app2.js,开启服务器2 端口:3002
5.新增public文件夹,新建index.html文件
6.分别启动两个服务
node app1.jsnode app2.js7.项目目录如下
至此,环境搭建好了,在浏览器访问http://localhost:3001/index.html即可。
我们把资源部署到了服务器1上,即端口3001。同源请求的是3001的接口,跨域请求的是3002的接口。
加载index.html会自动请求login接口,获取cookie
点击同源请求按钮,发送同源请求,getur接口请求会自动携带cookie
点击跨域请求按钮
解决:
1.axios请求时加上 withcredentials: true,再次点击跨域请求
2. 在服务端设置access-contr动物是人类的好朋友ol-allow-origin
在app2.js中加入
3. 在服务端设置access-control-allow-credentials
在app2.js中加入
到此,我看可以看到跨域请求中加上了cookie。
1.前端请求时在request对象中配置”withcredentials”: true;
2.跨域服务端在respon的header中配置”access-control-allow-origin”, “http://xxx:${port}”;
3.跨域服务端在respon的header中配置”access-control-allow-credentials”, “true”
1湖北省高中生课改网.withcredentials
该xmlhttprequest.withcredentials属性是一个布尔值,指示是否access-control应使用 cookie、授权标头或 tls 客户端证书等凭据进行跨站点请求。设置withcredentials对同站点请求没有影响。
此外,此标志还用于指示何时在响应中忽略 cookie。默认值为fal. xmlhttprequest来自不同域的 cookie 不能为自己的域设置 cookie 值,除非在发出请求之前withcredentials设置为。true通过设置为 true 获得的第三方 cookiewithcredentials仍将遵循同源策略,因此请求脚本无法通过document.cookie或从响应标头访问。 —来自mdn
2.access-control-allow-origin
指定了该响应的资源是否被允许与给定的origin共享
3.access-control-allow-credentials
当请求的凭证模式 ( ) 为access-control-allow-credentials时,响应标头告诉浏览器是否将响应暴露给前端 javascript 代码。 request.credentialsinclude
当请求的凭据模式 ( request.credentials) 为 时,如果值为include,浏览器只会将响应暴露给前端 javascript 代码。 access-control-allow-credentialstrue
凭据是 cookie、授权标头或分科教学 tls 客户端证书。
当用作对预检请求的响应的一部分时,这表明是否可以使用凭证发出实际请求。请注意,简单get 的请求不会被预检。因此,如果对具有凭据的资源发出请求,并且如果此标头未与资源一起返回,则响应将被浏览器忽略并且不会返绯闻女孩第二季插曲回到 web 内容。
access-control-allow-credentials头与 xmlhttprequest.withcredentials属性或 fetch api 构造函数中的credentials选项一起使用。request()对于带有凭据的 cors 请求,为了让浏览器向前端 javascript 代码公开响应,服务器(使用 access-control-allow-credentials标头)胡汉民书法和客户端(通过为 xhr、fetch 或 ajax 请求设置凭据模式)都必须表明它们’正在选择包括凭据。 —来自mdn
到此这篇关于详解javascript如何在跨域请求中携带cookie的文章就介绍到这了,更多相关javascript跨域携带cookie内容请搜索www.887551.com以前的文章或继续浏览下面的相关文章希望大家以后多多支持www.887551.com!
本文发布于:2023-04-05 23:24:02,感谢您对本站的认可!
本文链接:https://www.wtabcd.cn/fanwen/zuowen/6abb58fc6c49bea8987199b92274af01.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文word下载地址:详解javascript如何在跨域请求中携带cookie.doc
本文 PDF 下载地址:详解javascript如何在跨域请求中携带cookie.pdf
留言与评论(共有 0 条评论) |