thinkphp 框架自带的跨域请求
thinkphp 框架自带的跨域请求
allowCrossDomain
跨域请求
如果某个路由或者分组需要支持跨域请求,可以使用
Route::get('new/:id', 'News/read')
->ext('html')
->allowCrossDomain();
跨域请求一般会发送一条
OPTIONS的请求,一旦设置了跨域请求的话,不需要自己定义OPTIONS请求的路由,系统会自动加上。
跨域请求系统会默认带上一些Header,包括:
Access-Control-Allow-Origin:*
Access-Control-Allow-Methods:GET, POST, PATCH, PUT, DELETE
Access-Control-Allow-Headers:Authorization, Content-Type, If-Match, If-Modified-Since, If-None-Match, If-Unmodified-Since, X-Requested-With
你可以添加或者更改Header信息,使用
Route::get('new/:id', 'News/read')
->ext('html')
->header('Access-Control-Allow-Origin','thinkphp.cn')
->header('Access-Control-Allow-Credentials', 'true')
->allowCrossDomain();
https://www.kancloud.cn/manual/thinkphp5_1/489844
如果你想限制跨域请求的域名,则可以增加一条参数;
Route::rule('col/:id','Collect/read')
->allowCrossDomain(
['Access-Control-Allow-Origin'] => 'http://news.abc.com:8000'
);
你要保守你心,胜过保守一切。
本文来自博客园,作者:刘俊涛的博客,转载请注明原文链接:https://www.cnblogs.com/lovebing/p/18852370

浙公网安备 33010602011771号