新手偶遇跨域问题

本文记录了一位新手在遇到跨域问题时的解决过程。从axios的params和data使用困惑,到发现cookie在响应中的关键作用,最终通过CORS机制理解并解决了问题。文章还探讨了跨域、CSRF和相关概念,并提供了学习资源。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

之前一直用的是axios()然后直接在里面传一个整体的params参数,然后会发现每次请求的url并不仅仅是post的API了,好像把参数像类似get的方法 带到了后面,然后换成了axios.post 里面传参数,就可以规避url变了的问题,然后又试了试,发现把params变成一开始的data可以避免这个问题,可能params就是强行变成get 或者是拥有get特性,data就是post吧,可是我记得当时data一直接受不到数据..再试试data的使用

!!!竟然都接收到了

 

在网上查了一个 在verify中间件里面加 了个addCookieToResponse方法,竟然成功了哈哈哈哈,应该就是之前response里面没有加cookie导致的了,现在只需要解决掉data和params的区别就行了!

这整个问题竟然 就这么,结束了,从一开始的恶心的CSFR

 

大转折!!!

跨域本就是不需要存在的东西,Request 和 Response以及请求的一些东西额。。。之前一直以为发出的任何请求都是基于自己IP地址发出的,但实际上发出请求的域是从自己所在的页面所规定的URL发出的,意思是我在百度里面发出的请求,请求者还是百度,只有我从百度发送到别的比如谷歌的网站请求的时候,这种情况才算跨域。而真正的跨域判定是有规则的,比如域名不同,端口不同,协议不同之类的。

而前后端分离并不是一定会伴随着跨域,ajax也不一定会一定伴随着跨域

Cookie是根据页面而存的,有一定的安全性

CORS规定了跨域的机制与条件,定义了必须访问跨域资源的时候,浏览器与服务器应该如何沟通,基本思想为控制自定义HTTP头部

CSRF是因为存在跨域而存在的跨站点攻击,为了防止这个而在服务器端和客户端生成的安全token

明天再详细一下

 

参考资料

Ajax

https://juejin.im/post/58c883ecb123db005311861a?utm_source=gold_browser_extension#heading-36

 

跨域

https://zhuanlan.zhihu.com/p/25778815

https://segmentfault.com/a/1190000000718840

https://blog.youkuaiyun.com/cominglately/article/details/87552679

 

2019.4.1

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值