使用allorigins.win的raw API时含参数链接的CORS跨域问题求解
解决allorigins.win API处理多参数目标链接的跨域问题
- 问题原因:目标URL中的
&会被浏览器解析为API请求的参数分隔符,导致目标URL的后续参数被误识别为API自身的参数,无法完整传递到目标地址。 - 解决方法:对完整的目标URL进行URL编码后,再拼接到API地址的
url=参数后。- 原目标地址:
https://nocors2.glitch.me/webm?a=b&c=d - URL编码后:
https%3A%2F%2Fnocors2.glitch.me%2Fwebm%3Fa%3Db%26c%3Dd - 最终请求地址:
https://api.allorigins.win/raw?url=https%3A%2F%2Fnocors2.glitch.me%2Fwebm%3Fa%3Db%26c%3Dd
- 原目标地址:
- 编码实现方式:
- 前端开发中可直接使用JavaScript原生函数:
encodeURIComponent('https://nocors2.glitch.me/webm?a=b&c=d') - 非开发场景可通过URL编码工具完成,需确保对整个目标URL进行编码,而非仅编码参数片段。
- 前端开发中可直接使用JavaScript原生函数:
内容的提问来源于stack exchange,提问作者shiyon sufa
相关产品推荐
相关产品推荐

