前端axios上传图片,php接收图片失败问题

发生场景:

前端调用一次接口  但是后台添加接口 被调用2次添加。OPTIONS请求执行了一次程序;然后post也执行了一次程序;

前端使用:angular, NG-ZORRO 的 nz-upload 插件

后台使用:thinkphp5

 


报错信息

Access to XMLHttpRequest at 'http://127.0.0.1:8080/public/index.php/install/Userapi/uploadImg' from origin 'http://localhost:4200' has been blocked by CORS policy: Response to preflight request doesn't pass access control check: It does not have HTTP ok status.

POST http://127.0.0.1:8080/public/index.php/install/Userapi/uploadImg net::ERR_FAILED

问题描述:因为在进行跨域请求的时候,前端会先options请求接口,去试探是否支持跨域,支持跨域之后,在进行正式的post请求添加。

解决方法:请求做限制,options请求不执行接口功能。

PHP代码,在方法中加入以下代码。这是我所遇到的问题以及解决办法。

if (strtolower($_SERVER['REQUEST_METHOD']) == 'options') {
    exit;
}

方法来自:php接口 前端调用一次 服务端被请求了2次 (php 跨域请求执行了两次接口 OPTIONS(预处理)导致)_ouxiaoxian的博客-CSDN博客

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小两

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值