php使用CORS实现跨域请求
Posted 时光cs流逝
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了php使用CORS实现跨域请求相关的知识,希望对你有一定的参考价值。
js跨域的解决方法,一百度一大堆,不过都是jsonp为主,这种解决方法只适用于GET请求。POST跨域的话需要在HTTP协议上下功夫。
主要会用到以下几个响应头
Access-Control-Allow-Origin
Access-Control-Allow-Methods
Access-Control-Max-Age
Access-Control-Allow-Headers
一个个来解释
Access-Control-Allow-Origin:允许哪些url可以跨域请求到本域
Access-Control-Allow-Methods:允许的请求方法,一般是GET,POST,PUT,DELETE,OPTIONS
Access-Control-Max-Age:表明在该时间段内不再“预检”允许的请求方法(相当于缓存),即不以OPTIONS方法进行请求
angularjs这边是没任何区别的,重点在服务端
Access-Control-Allow-Headers:允许哪些请求头可以跨域
php可以利用header函数发送响应头
header(\'Access-Control-Allow-Origin:*\');
header(\'Access-Control-Allow-Methods:POST\');
header(\'Access-Control-Max-Age:60\');
header(\'Access-Control-Allow-Headers:x-requested-with,content-type\');
header(\'Content-Type:application/json;charset=utf-8\');
print_r(file_get_contents(\'php://input\'));
以上是关于php使用CORS实现跨域请求的主要内容,如果未能解决你的问题,请参考以下文章