我的AJAX请求的CORS策略错误与PHP

发布于 2025-02-07 18:57:13 字数 1463 浏览 2 评论 0原文

我试图在我的Laravel API服务器上发送AJAX请求,以更新用户数据,但会遇到CORS Orgin错误。我正在使用智能模板引擎

错误:

在'http://127.0.0.0.1:8000/api/v2.3/user/updateuserroles'from Oncount'http:// localhost'已被CORS策略阻止:请求Header field acconer field-field accontrol' - 允许使用前响应中的访问控制允许头不允许使用。

这是我的ajax请求

$('.user_role').on('click',function(){
    var role_id_and_user_id = $(this).val();
    var func = 'delete';
    if ($(this).is(":checked"))
    {
        func = 'insert'
    }
    console.log(func);
    $('.loading').show();
    var urlRemote = "{/literal}{$LARAVEL_BASEURL}{literal}/user/updateUserRoles";
    $.ajax({
        url: urlRemote,
        type: "POST",
        crossDomain: true,
        data: {
            'event': func,
            'role_id': role_id_and_user_id,
        },
        cache: false,
        contentType: false,
        processData: false,
        headers: {
            'Authentication':"Bearer {/literal}{$smarty.session.laravel_token}{literal}",
            "Accept": "application/json",
            "Access-Control-Allow-Methods":"*",
         },
        success: function(responseData, textStatus, jqXHR) {
            $('.loading').hide();
            console.log(responseData);
        },
        error: function(jqXHR, textStatus, errorThrown) {
            $('.loading').hide();
            console.log(errorThrown);
        }
    })
    return;
});

I tried to send a POST ajax request on my laravel API server to update users data but getting CORS Orgin Error. I am using Smarty Template Engine.

Error:

Access to XMLHttpRequest at 'http://127.0.0.1:8000/api/v2.3/user/updateUserRoles' from origin 'http://localhost' has been blocked by CORS policy: Request header field access-control-allow-methods is not allowed by Access-Control-Allow-Headers in preflight response.

Here is my Ajax request

$('.user_role').on('click',function(){
    var role_id_and_user_id = $(this).val();
    var func = 'delete';
    if ($(this).is(":checked"))
    {
        func = 'insert'
    }
    console.log(func);
    $('.loading').show();
    var urlRemote = "{/literal}{$LARAVEL_BASEURL}{literal}/user/updateUserRoles";
    $.ajax({
        url: urlRemote,
        type: "POST",
        crossDomain: true,
        data: {
            'event': func,
            'role_id': role_id_and_user_id,
        },
        cache: false,
        contentType: false,
        processData: false,
        headers: {
            'Authentication':"Bearer {/literal}{$smarty.session.laravel_token}{literal}",
            "Accept": "application/json",
            "Access-Control-Allow-Methods":"*",
         },
        success: function(responseData, textStatus, jqXHR) {
            $('.loading').hide();
            console.log(responseData);
        },
        error: function(jqXHR, textStatus, errorThrown) {
            $('.loading').hide();
            console.log(errorThrown);
        }
    })
    return;
});

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

横笛休吹塞上声 2025-02-14 18:57:13

将其添加到您的文件请求中添加在代码顶部

<?php
header(“Access-Control-Allow-Origin: *”);
header(‘Access-Control-Allow-Methods: GET, POST’);

add this in your file request add on top of your code

<?php
header(“Access-Control-Allow-Origin: *”);
header(‘Access-Control-Allow-Methods: GET, POST’);
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文