2022年,我参与了一个城市的大项目,那时候我们用ajax处理跨域问题,我当时也懵,这个跨域问题怎么解决呢,后来才反应过来,我们得在后端做手脚,加个代理,把请求转发过去,那时候就是死磕,那可是几十万条数据,得保证用户体验,我花了好多钱,最后效果还不错,嗯,可能我偏激了点,但是那时候的压力,你知道的,就是那种感觉,唉,说起来都是泪。
上周,我在北京参加了一个前端技术分享会。说到跨域问题,这事儿挺麻烦的。大家知道,前端在调用不同域的资源时,会遇到浏览器的同源策略限制。我那个朋友说,解决这个问题,可以试试JSONP或者CORS方法。不过,本质上,这还是一个浏览器安全机制。
一言以蔽之,每个人情况不同,可能需要根据实际情况选择合适的方案。不过,我觉得还是得先了解清楚你的具体需求,这样才能给出更具体的建议。算了,你看着办吧。我刚想到另一件事,CORS好像现在很多浏览器都支持了,用起来也挺方便的。
上周有个客人问我,说他的网站在做AJAX请求时遇到了跨域问题。我当时就告诉他,这事儿其实挺常见的。我自己踩过的坑是,在2019年开发一个电商平台的时候,因为跨域问题,页面的部分功能直接瘫痪了。
你想想,跨域问题主要是浏览器出于安全考虑,限制了来自不同源的文档或脚本对另一个源的资源进行读写操作。这个规则对前端开发者来说,有时候确实是个头疼的问题。
那怎么解决呢?方法有几个:
1. CORS(跨源资源共享):服务器通过设置HTTP响应头Access-Control-Allow-Origin,允许来自特定源的请求。
2. JSONP:利用