聊跨域接口上传图片总是失败

之前写的上传图片接口参数是图片base64,一直用的好好的,现在公司开始写后台开发了,用的layui框架,直接使用layui自带的上传,发现之前接口用不了了,因为这个上传直接传的是file文件流,所以就又正常写了个参数是文件流的接口。

然后前端开始对接,发现一直提示跨域的问题,直接请求不到接口了,经过查阅资料,发现是上传图片的时候,Access-Control-Allow-Origin必须和客户端的域名一致,之前图方便就直接弄成*号了,所以对服务端跨域进行了处理,代码如下:

$originList = [
    'http://127.0.0.1',
    'http://xtc.com',
    'http://loalhost',
    'http://layadmin.com'
];
if(in_array($_SERVER['HTTP_ORIGIN'], $originList)){
    header('Content-Type: text/html;charset=utf-8');
    header('Access-Control-Allow-Origin:'.$_SERVER['HTTP_ORIGIN']);
    header('Access-Control-Allow-Methods:GET, POST, PATCH, PUT, DELETE'); // 允许请求的类型
    header('Access-Control-Allow-Credentials: true'); // 设置是否允许发送 cookies
    header('Access-Control-Allow-Headers: Authorization, Content-Type, If-Match, If-Modified-Since, If-None-Match, If-Unmodified-Since, X-Requested-With, token');
}

改过之后,发现跨域问题已解决。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值