用 Laravel-cors 做跨域上传图片出现 404
A站为请求站http://a.aa.com/
B站为接口站http://a.bb.com/api/
用的API无状态路由,
Route::middleware(['cross'])->group(function ($router) {
$router->post('uploadImgFile', 'FileController@uploadImgAudioFile'); //上传图片
});
中间件
'cross'=>\Barryvdh\Cors\HandleCors::class,
配置是默认的
'supportsCredentials' => false,
'allowedOrigins' => ['*'],
'allowedHeaders' => ['*'],
'allowedMethods' => ['*'], // ex: ['GET', 'POST', 'PUT', 'DELETE']
'exposedHeaders' => [],
'maxAge' => 0,
A站前端代码
var blob = item.getAsFile(),
reader = new FileReader();
var formData = new FormData();
var name = encodeURIComponent('img-' + new Date().getTime() + '.png');
formData.append('upload', blob, name);
$.ajax({
url: 'http://a.bb.com/api/uploadImgFile',//这是我测试的本地域名
type: 'POST',
data: formData,
//这两个设置项必填
contentType: false,
processData: false,
success: function (res) {
console.log(res);
if (res.code == 0) {
}
}
});
提示的错误
POST http://a.bb.com/api/uploadImgFile 404 (Not Found)
Access to XMLHttpRequest at 'http://a.bb.com/api/uploadImgFile' from origin 'http://a.aa.com' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource.
我是哪里配置出错了吗?
推荐文章: