javascript - jwt_authentication 请求 ajax - symfony

标签 javascript ajax symfony jwt

我正在使用 symfont 和 JSON Web Token 以及 Symfony。

我正在尝试使用 ajax 获取 jwt,但我收到 401(未经授权) 问题出在 ajax 上,因为我尝试使用 postman ,我可以获得 token 。

这是我的 security.yaml

security:
    encoders:
        App\Entity\Users:
            algorithm: bcrypt

    providers:
        users:
            entity:
                class: App\Entity\Users
                property: email

    firewalls:
        dev:
            pattern: ^/(_(profiler|wdt)|css|images|js)/
            security: false

        login_app_manager:
            pattern:  ^/user/login
            stateless: true
            anonymous: true
            provider: users
            json_login:
                check_path: /user/login
                username_path: email
                password_path: password
                success_handler: lexik_jwt_authentication.handler.authentication_success
                failure_handler: lexik_jwt_authentication.handler.authentication_failure
                require_previous_session: false


        app_api_manager:
            pattern:  ^/mngr/api
            stateless: true
            anonymous: false
            provider: users
            guard:
                authenticators:
                    - lexik_jwt_authentication.jwt_token_authenticator

    access_control:
        - { path: ^/login, roles: IS_AUTHENTICATED_ANONYMOUSLY }
        - { path: ^/register, roles: IS_AUTHENTICATED_ANONYMOUSLY }
        - { path: ^/api, roles: IS_AUTHENTICATED_FULLY }


这是我的ajax

var data = {
    'email':email,
    'password':password
};
$.ajax({
    type: "POST",
    url: "/user/login",
    contentType: "application/json",
    data: JSON.stringify(data),
    success: function(response) {
        console.log(response);
    },
    error: function (XMLHttpRequest, textStatus, errorThrown) {
        console.log('Error : ' + errorThrown);
    }
});

请帮帮我,谢谢

最佳答案

尝试用 post 代替 ajax:

        $(document).ready(function{
            //form submit
            $("form").submit(function(event){
                var email      = $('#email').val();
                var password   = $('#password').val();
                $.post("/user/login",{
                    email:email, password: password
                }).done(function(data){

                })
            })
        });

关于javascript - jwt_authentication 请求 ajax - symfony,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55636800/

相关文章:

javascript - 如何制作平行线

javascript - 屏蔽和 AJAX 请求

php - Twig embed 与 include,任何使用 include 的理由

php - 如何在 Api-Platform 中手动将资源序列化为 Json?

php - Laravel 5.5 在多次尝试后在 ajax 调用上不断收到 419 post 错误

PHPUnit Symfony v3.4 继承已弃用

javascript - 我将 onfocus 事件分配给元素的代码有什么问题?

javascript - Soundcloud windget setVolume 根本不工作

javascript - 如何按类获取前一个相邻元素?

jquery - 我可以在 jquery 内容脚本文件(Firefox 插件 sdk)中使用插件代码吗?如果是怎么办?