Привет, я настроил lexik / jwt-authentication-bundle: v2.4 с Symfony2.8 и ниже мой config.yml.
lexik_jwt_authentication:
private_key_path: "%kernel.root_dir%/config/jwt/private.pem" #
required for token creation
public_key_path: "%kernel.root_dir%/config/jwt/public.pem" #
required for token verification
pass_phrase: "%jwt_key_pass_phrase%" # required for token
creation, usage of an environment variable is recommended
token_ttl: 3600
И это security.yml
firewalls:
login:
pattern: ^/api/login
stateless: true
anonymous: true
form_login:
check_path: /api/login_check
username_parameter: username
password_parameter: password
success_handler: lexik_jwt_authentication.handler.authentication_success
failure_handler: lexik_jwt_authentication.handler.authentication_failure
api:
pattern: ^/api
stateless: true
provider: my_provider
guard:
authenticators:
- lexik_jwt_authentication.jwt_token_authenticator
Я пытаюсь получить токен JWT с помощью почтальона.
http://localhost/j1/web/app_dev.php/api/login_check
Я получаю токен как.
{
"token": "eyJhbGciOiJSUzI1NiJ9.eyJyb2xlcyI6WyJST0xFX1VTRVIiXSwidXNlcm5hbWUiOiJpbmZvQGFtaXJmcmVlbGFuY2UuY29tIiwiaWF0IjoxNTUwODQ0NjQ0LCJleHAiOjE1NTA4NDgyNDR9.YKDrQ7_PaMOoW3m_reWhGb8PoNkc6wsB9EX86JNwGW4yAeG7ezqvgA4Je6AUD6BtZgGExs2oFsJTWoTAAjCyf4ZyCoUaZ7m_M7s4tJkStHgR64q1kwl1bNu21Lj0sbuAs9jjxRHzHzcNE-v8eoQf26iiXvcT1WTfhEiWQ97xtWbnTTqYzt38BjgVrqDIWDrV2CaaX-W0mHb1Ibif1VkHTgRziq1gWYgv7nqIvVVDynjIueP1HBGVBSvJPKAzzSZNWE5rcijtNVHRuH_UV0vafq1owMs8KQ8vu6pK2lH22ozHkb8V0MWHeXloHGGznAHyFnY4NPPHOwQ74hQfRT2_ibgoJ8VHtoGDsxY_8n56uIRykxk1YoXYPBEZHVEF9rCZSzCm693U-I1JNM2o6thj81tBBzTEce6csa4TbYuBEybx4zBb3pHNGAYqF3qEis63ZCzlgYsPrWOqReljfMA61QqcMcs15g6iEJ5aABgxK0FF2AuFx4_fkUDJHrZOmiasxE3ATiO4tEEf4DPizLjMsnmXgzvWkzVt1-SjBUxFLJWPGA8pCvGXrXA4-giQLWCThQ_zJ7hbGJl1_rVLT-KBoBgjV0OYaoeINh2rWXXypqo36Xh02I62_vReOCcw-He5rX6TsCuyyNAHBnP2CufC47fP-8L_ZSPWYjPxxdgOlK4"
}
И я отправляю токен для проверки токена.
http://localhost/j1/web/app_dev.php/api/locationData/8489
Авторизация: токен на предъявителя с запросом через почтальона.Но я всегда получаю результат как JWT Not Found.
"code":401,"message":"JWT Token not found"}
Итак, я отладил код с помощью JWTTokenAuthenticator, я обнаружил, что он правильно получает заголовок Authorization в запросе, но следующий метод не возвращает токен обратно.
$jsonWebToken = $tokenExtractor->extract($request)
Вот этот всегда верный false.Что делать, может кто-нибудь направит меня, пожалуйста.
Заранее спасибо.