Cum să folosești WP-REST API pentru autentificarea utilizatorului și obținerea datelor pentru aplicația Android?

15 apr. 2016, 10:56:06
Vizualizări: 49.3K
Voturi: 13

Doresc să folosesc Wordpress REST API pentru autentificare și obținerea datelor utilizatorului în aplicația Android.

Folosesc tabelul wp_users pentru utilizatori și un tabel personalizat pentru informațiile utilizatorului.

Am încercat să scriu propriul meu REST API dar pentru asta trebuie să fac $wpdb accesibil în afara instalării WordPress.

Vă rog să oferiți soluția dumneavoastră care include și funcționalitatea de API-KEY sau ceva similar.

Mulțumesc

4
Comentarii

Ai găsit soluția ?

Mithun Sarker Mithun Sarker
18 mai 2016 09:12:33

@shuvro , da, am soluția , te rog verifică răspunsul meu. mult succes cu produsul tău

Divyanshu Jimmy Divyanshu Jimmy
19 mai 2016 10:35:05

Ai citit acest articol pe make?

kaiser kaiser
23 oct. 2016 16:10:33

omule, soluția ta a fost grozavă, dar parolele din WordPress sunt hash-uite :/ cum ai reușit să te autentifici?

Daniyal Javaid Daniyal Javaid
26 iul. 2018 22:09:55
Toate răspunsurile la întrebare 2
2

Am găsit cea mai simplă soluție folosind pluginul WP-REST API, mai întâi configurați acest lucru în mediul vostru:

1.) În fișierul functions.php al temei voastre, înregistrați cârlige pentru endpoint-urile API:

add_action( 'rest_api_init', 'register_api_hooks' );
// Endpoint-uri API personalizate pentru WP-REST API
function register_api_hooks() {

    register_rest_route(
        'custom-plugin', '/login/',
        array(
            'methods'  => 'POST',
            'callback' => 'login',
        )
    );

    function login() {

        $output = array();

        // Logica voastră aici.
        return $output;

    }

2.) Implicit, dacă aveți permalink-uri prietenoase activate, WordPress REST API "se află" la /wp-json/. Apoi endpoint-ul API este accesibil la domeniul-tau.com/wp-json/custom-plugin/login cu o cerere de tip POST.

Observați că custom-plugin/login este de fapt definit în register_rest_route în funcția PHP register_api_hooks()

Pentru cheia API folosesc Wordpress Nonces - destul de simplu ca în discuția mea de aici. Sper că aceste răspunsuri sunt utile pentru toți dezvoltatorii full stack care sunt noi la WordPress REST API

19 mai 2016 10:34:36
Comentarii

caută cineva acest fișier functions.php? Iată-l -> wordpress\wp-content\themes\themeName\functions.php

Daniyal Javaid Daniyal Javaid
26 iul. 2018 21:55:37

Se pare că funcția de login nu face nimic, ce trebuie pus în // Your logic goes here ?

conor909 conor909
2 dec. 2020 21:51:16
0

Dacă dorești doar să autentifici utilizatorii și să obții detalii despre ei, poți folosi un plugin excelent numit "JSON API AUTH".

https://wordpress.org/plugins/json-api-auth/

Următoarele metode sunt disponibile: validate_auth_cookie, generate_auth_cookie, clear_auth_cookie, get_currentuserinfo

Un nonce poate fi creat apelând http://localhost/api/get_nonce/?controller=auth&method=generate_auth_cookie

Poți folosi valoarea ‘nonce’ pentru a genera un cookie. http://localhost/api/auth/generate_auth_cookie/?nonce=f4320f4a67&username=Catherine&password=password-here

Folosește cookie-ul astfel în apelurile către alte controlere: http://localhost/api/contoller-name/method-name/?cookie=Catherine|1392018917|3ad7b9f1c5c2cccb569c8a82119ca4fd

12 aug. 2017 08:32:33