Reactjs 飞行前响应中的访问控制允许标头不允许请求标头字段访问控制允许原点。在CodeIgniter框架中
我是codeIgniter的新手,我已经使用codeIgniter构建了一个RESTWeb服务 使用react JS的UI 在postman中,web服务似乎运行良好。但是当我集成到React JS中时,它抛出了一个错误 加载失败:飞行前响应中的访问控制允许标头不允许请求标头字段访问控制允许来源。 EmployeeLogin.js:2未捕获(承诺中)类型错误: 无法获取 我的web服务是:123.0.0.5:81/codeigniter restapi/index.php/auth/login 我的React服务器是:localhost/3000 我已经搜索了解决方案,并尝试在我的控制器,但没有工作Reactjs 飞行前响应中的访问控制允许标头不允许请求标头字段访问控制允许原点。在CodeIgniter框架中,reactjs,codeigniter,web-services,access-control,Reactjs,Codeigniter,Web Services,Access Control,我是codeIgniter的新手,我已经使用codeIgniter构建了一个RESTWeb服务 使用react JS的UI 在postman中,web服务似乎运行良好。但是当我集成到React JS中时,它抛出了一个错误 加载失败:飞行前响应中的访问控制允许标头不允许请求标头字段访问控制允许来源。 EmployeeLogin.js:2未捕获(承诺中)类型错误: 无法获取 我的web服务是:123.0.0.5:81/codeigniter restapi/index.php/auth/login
class Auth extends CI_Controller {
function __construct() {
parent::__construct();
header('Access-Control-Allow-Origin: *');
header("Access-Control-Allow-Headers: X-API-KEY, Origin, X-Requested-With, Content-Type, Accept, Access-Control-Request-Method, Authorization");
header("Access-Control-Allow-Methods: GET, POST, OPTIONS, PUT, DELETE");
}
我的脚本是:
(async () => {
const rawResponse = await fetch('http://123.0.0.5:81/codeigniter-rest-api/index.php/auth/login', {
method: 'POST',
headers: {
'Accept': 'application/json',
'Content-Type': 'application/json'
},
body: JSON.stringify(datapost)
});
const content = await rawResponse.json();
alert(content);
})();
更改:fetch('http://...)
tofetch('https://...)
或获取('/…)
您不能通过HTTP执行跨源请求,只能通过HTTPS。为什么请求具有
访问控制允许源代码。
。。?我想应该是服务器端。。是的,我看了文件。现在工作很好。谢谢