Estoy desarrollando un complemento para wordpress y tengo problemas con la API Rest. En mi servidor de prueba funciona sin problemas. (v4.6.6) En un servidor diferente (v4.4.10), la API devuelve este mensaje de error:
{"code":"rest_invalid_handler","message":"
Der Handler f\u00fcr die Route ist ung\u00fcltig","data":{"status":500}}%
El mensaje está en alemán y significa “El controlador de la ruta no es válido”. No entiendo por qué traducen los mensajes de error de una API. No tiene sentido para mí. 🙂
Las rutas en el http://dominio/wp-json son iguales. ¿Quizás un problema con las diferentes versiones de WP?
Definición de la ruta:
function __construct() {
add_action( 'rest_api_init', function(){
register_rest_route( 'test_namespace', 'ping', array(
'methods' => 'POST',
'callback' => array($this, 'ping_test'),
'permission_callback' => array($this, 'myhacks_permission_callback'),
) );
} );
}
Gracias por la ayuda.
¿Puedes mostrarnos el resto del archivo? Creo que el problema proviene de $ este alcance es incorrecto.
– Cañada
3 de septiembre de 2017 a las 13:16
Creo que el problema está relacionado con la versión de PHP. Recibo este error en todos los servidores con < PHP 5.4. Eso está bien para mí. Actualicé la versión de PHP y ahora está funcionando.
– Schmidko
5 sep 2017 a las 12:40
$esto está bien, el mío viene de usar
'callback' => array($this => 'ping_test')
en vez de'callback' => array($this, 'ping_test')
– Cañada
6 de septiembre de 2017 a las 13:18
¡El comentario de @Glen funcionó para mí!
– Jorge Irún
12 sep 2019 a las 17:47