You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Javascript调用Fast2sms.com API出现CORS策略错误问题咨询

错误原因

CORS是浏览器专门针对前端JavaScript请求设置的跨域安全限制规则,仅作用于浏览器环境:

  • Fast2sms的公共接口没有配置允许第三方前端站点跨域调用的响应头,所以浏览器直接拦截了你的JS请求,和接口本身是否正常无关。
  • PHP运行在服务端,服务端发起的HTTP请求不受浏览器CORS规则限制,所以可以正常调用成功。

另外你当前的前端代码直接明文存储Fast2sms的API密钥,任何人打开浏览器开发者工具就能拿到密钥,会导致你的账号被恶意调用、短信额度被盗刷,属于严重的安全隐患。

解决方案

方案1:服务端代理转发(推荐生产环境使用)

用你已经实现了接口调用的PHP代码新增一个专属后端接口:

  1. 前端只把手机号、OTP内容这些必要参数传给你自己的PHP接口
  2. 你的PHP服务端拿到参数后,内部调用Fast2sms的短信接口
  3. PHP接口将短信发送结果返回给前端

这个方案既彻底解决CORS问题,也能把API密钥保存在服务端避免泄露,还可以自行添加发送频率限制、验证码有效期校验等安全逻辑。

方案2:调整请求格式绕预检(仅临时测试可用)

你的当前请求带了application/json类型的请求头和自定义授权头,触发了CORS预检校验,可以尝试修改请求编码格式为application/x-www-form-urlencoded,避免触发预检,但该方案仍然会泄露API密钥,只适合本地测试功能,绝对不能用于线上环境。

内容的提问来源于stack exchange,提问作者Ishpreet

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.09 05:06:01