User Data Fields For JWT Authentication

User Data Fields For JWT Authentication Install Statistics

0
100%
Today: 0 Yesterday: 0 All-time: 1,597 downloads
User Data Fields For JWT Authentication Icon

Try plugin: User Data Fields For JWT Authentication

We'll create fresh WordPress site with User Data Fields For JWT Authentication installed. You have 20 minutes to test the plugin after that site we'll be deleted.

Takes ~10 seconds to install.

About User Data Fields For JWT Authentication

Wordpress is a good content mangement system for building websites, but it will be better if you build like mobile apps,

3


0


0


0


0

updated: 2 years ago
since: 3 years ago
author: AhmedHnewa

Description

WordPress is a good content mangement system for building websites, but it will be better if you build like mobile apps,
With the wordpress rest api you can create posts, edit posts, view posts, Users, Uploading Media etc…
but the problem with the wordpress rest api it does not provide any authentication methods for third party application like mobile apps
The Jwt Plugin on wordpress.org does provide that

and this plugin is just a addon for that plugin

So this plugin is useful if you don’t want to make another request to fetch user data like Id etc..
because you have to get the id of the user in ordet to get all data

It really simple plugin
it writed with 50 lines of code, the size of the plugin is 3Kb

Note: This Is Plugin For
JWT Authentication for WP REST API Plugin

so if the jwt authentication plugin is not installed
this plugin will not add the fields to it endpoints

and the fields will be added only if the token is getted successfully

Example request (before install the plugin):
{
    “token”: “eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwOlwvXC8xOTIuMTY4LjAuMTgyIiwiaWF0IjoxNjE0MDg3NDQ2LCJuYmYiOjE2MTQwODc0NDYsImV4cCI6MTYxNDY5MjI0NiwiZGF0YSI6eyJ1c2VyIjp7ImlkIjoiMSJ9fX0.KeAUc7PiTne0_PThsSAWo1ruvl2Ocu-fbCn2jG7zkoE”,
    “user_email”: “[email protected]”,
    “user_nicename”: “admin”,
    “user_display_name”: “admin”
}

Example response (after install the plugin):
{
    “token”: “eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwOlwvXC8xOTIuMTY4LjAuMTgyIiwiaWF0IjoxNjE0MDg2NjQyLCJuYmYiOjE2MTQwODY2NDIsImV4cCI6MTYxNDY5MTQ0MiwiZGF0YSI6eyJ1c2VyIjp7ImlkIjoiMSJ9fX0.nyDOICdQcZKbWZo2kQRp_eLBkuxjnK_rpxs-HJREyCg”,
    “user_email”: “[email protected]”,
    “user_nicename”: “admin”,
    “user_display_name”: “admin”,
    “user_id”: 1,
    “user_login”: “admin”,
    “user_first_name”: “sfd”,
    “user_last_name”: “”,
    “user_roles”: [
        “administrator”
    ],
    “user_role”: “administrator”,
    “user_registered”: “2021-02-17 09:21:29”,
    “user_url”: “http://localhost”,
    “user_status”: “0”,
    “user_avatar_url”: “https://secure.gravatar.com/avatar/22feea4605ac5b7163eac439b5241034?s=96&d=mm&r=g”,
    “user_activation_key”: “”
}

Of course you can add the code of this plugin to your Theme,
but this is not recommened because when you change the theme or update it
the changes will revert back, you can create child theme for that
but instead you can just install this simple plugin

Don’t forget to setup (JwtAuthenticatonForWordpress)[https://wordpress.org/plugins/jwt-authentication-for-wp-rest-api/]

Github

Can Add User Data Fields To Validate Token Endpoint ?

This plugin can also add user data fields to validate token endpoint,

Unfortunately, the jwt extension does not support using the filter for validate_token function,
So You Will Need To Modify Some Codes Inside Jwt Plugin Codes
Go To \wp-content\plugins\jwt-authentication-for-wp-rest-api\public\class-jwt-auth-public.php
And At The End Of Function That Named validate_token
In Line 302

Edit This Code
From :
/** If the output is true return an answer to the request to show it */
return array(
‘code’ => ‘jwt_auth_valid_token’,
‘data’ => array(
‘status’ => 200,
),
);
To :
$value = array(
‘code’ => ‘jwt_auth_valid_token’,
‘data’ => array(
‘status’ => 200,
)
);
/** If the output is true return an answer to the request to show it */
return apply_filters(‘jwt_auth_validate_token’, $value, $token);

Now you have done,
the plugin should be able to add new values by adding a filter

Note :
If you updated the jwt plugin,
you should again edit the code because it will be removed

REQUIREMENTS

JWT Authentication for WP REST API Plugin