Supporto » Funzionalità = Plugin » rest_no_route dopo creazione plug in ed api

  • Ho creato un plugin custom per ospitare gli endpoint per la creazione di un processo di registrazione custom utilizzando dei tool di frontend come vue.js

    Il plugin l’ho creato nella cartella wp-content/plugin/custom-api-memofly, l’ultima cartella l’ho creata io per ospitare lo script del mio plugin.

    il codice contenuto nel mio script è il segunete:

    <?php
    
    /**
    
     *Plugin Name: Custom API per Memofly
    
     *Plugin URI: https://memofly.it
    
     *Description: Plugin che tiene in piedi tutte le interazioni con il lato WordPress di Memofly verso altri moduli del sito
     *             Es. le richieste di login e registrazione
    
     *Version: 1.0
    
     * Author: Mirco Serra (Flyip)
    
     *Author URI:  https://www.flyip.it/
    
     */
    
    add_action('rest-api-init', function (){
        register_rest_route('custom/v1', '/register',array(
            'methods' => 'POST',
            'callback' => 'api_register_new_user',
            'permission_callback' => function () {
                return true;
            }
        ));
    });
    
    function api_register_new_user(WP_REST_Request $request): object
    {
        $response = (object)[] ;
        $body = $request.get_body();
        $body = json_encode($body);
        $user = register_new_user(body['username'],$body['password']);
        if(! is_wp_error($user)){
            $response->status = 200;
            $response->message = "OK";
            $response->data->user_id = $user;
        }else{
            $response->status = 501;
            $response->message = $user;
            $response->data->user_id = "";
        }
        return $response;
    }

    Lo script non registra nessun endpoint in quanto quando vado a chiamarlo “https://memofly.it/wp-json/custom/v1/register&#8221; mi risponde con il seguente errore

    {
        "code": "rest_no_route",
        "message": "Nessun percorso fornisce una corrispondenza tra l'URL ed il metodo richiesto.",
        "data": {
            "status": 404
        }
    }

    La pagina su cui ho bisogno di aiuto: [devi essere connesso per vedere il link]

Stai visualizzando 1 risposte (di 1 totali)
  • Chi ha creato la discussione mircoserra

    (@mircoserra)

    L’errore sta in add_action(‘rest-api-init’, …) che deve essere add_action(‘rest_api_init’,…)

Stai visualizzando 1 risposte (di 1 totali)
  • Devi essere collegato per rispondere a questo topic.