现附上我的路由配置
然后我的中间件配置跨域,中间件截图就不提供了,和官方手册的一致。以下的是中间件的配置代码:
然后我通过浏览器请求 http://域名+/upload/file 后,就会提示跨域。
无奈只能配置中间件全局跨域,才能解决问题。如下:
请问还有别的解决方法吗?我现在不这样配置全局跨域
Upload::class 的命名空间是?
Upload::class
是我实际处理的逻辑控制器,仅仅返回一个json数据而已,可以忽略的。不过不是放在admin模块,是否common模块,这样会不会有影响?
解决了。应该是我的 Upload::class 是在 common 模块导致的,所以要给common模块配置跨域才行。感谢
中间件配置是按照实际调用模块来的,不是按照url地址来的。 如果你的 Upload::class 是在common模块里,应该在中间件里配置common为key,而不是upload。
common
upload
如果你想为某个特定路由设置中间件,可以这样。
Route::group('/upload', function() { Route::any('/file', [your_class, 'method']); })->middleware([support\middleware\AccessControll::class]);
参考手册 路由中间件
感谢,刚刚试了一下,确实是这样。我一直以为是按照路由来的
Upload::class
的命名空间是?是我实际处理的逻辑控制器,仅仅返回一个json数据而已,可以忽略的。不过不是放在admin模块,是否common模块,这样会不会有影响?
解决了。应该是我的 Upload::class 是在 common 模块导致的,所以要给common模块配置跨域才行。感谢
中间件配置是按照实际调用模块来的,不是按照url地址来的。
如果你的
Upload::class
是在common模块里,应该在中间件里配置common
为key,而不是upload
。如果你想为某个特定路由设置中间件,可以这样。
参考手册 路由中间件
感谢,刚刚试了一下,确实是这样。我一直以为是按照路由来的