form表单提交没有跨域问题,但ajax提交存在跨域问题

Posted tangjiao_Miya

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了form表单提交没有跨域问题,但ajax提交存在跨域问题相关的知识,希望对你有一定的参考价值。

浏览器的策略本质是:一个域名下面的JS,没有经过允许是不能读取另外一个域名的内容,但是浏览器不阻止你向另外一个域名发送请求。

所以form表单提交没有跨域问题,提交form表单到另外一个域名,原来页面是无法获取新页面的内容,或者说form提交后不需要返回,但是ajax是需要返回的。

而ajax是想要读取响应内容,浏览器是不允许你这么做的。

世界本无跨域,是浏览器不允许js访问别的域,但是浏览器却没有限制自己,img标签和script标签都是可以加载其他域的图片或者js文件。这不就是jsonp的跨域嘛,利用浏览器的历史兼容性。

浏览器的安全策略限制的是js脚本,并不限制src,form表单提交之类的请求。就是说form表单提交不存在安全问题,ajax提交跨域存在安全问题。

以上是关于form表单提交没有跨域问题,但ajax提交存在跨域问题的主要内容,如果未能解决你的问题,请参考以下文章

为什么form表单提交没有跨域问题,但ajax提交有跨域问题?

HTML表单问题

jquery Ajax 通过jsonp的方式跨域提交表单

okhttppost表单请求参数为null过滤

SpringSecurity解决跨域问题,在SpringBoot整合SprinSecurity中如何用前后端分离Ajax登录,Ajax登录返回状态200还是近error

如何接收 HTML 表单请求