Un usuario preguntó 👇
Estoy tratando de consultar mi sitio de WordPress a través de la API REST obteniendo de javascript. Para manejar la autenticación, el Plugin de autenticación JWT. Puedo generar y restaurar con éxito una señal de acceso. Sin embargo, cuando intento usar ese token de acceso para futuras aplicaciones, la pre-aplicación OPTIONS llega a su fin. 403 Forbidden
código de estado. A. 200 Okay
necesario para proceder con la solicitud. Espero que esto sea algo en la configuración de mi sitio de WordPress o, muy probablemente, en el servidor en el que está alojado. Espero que WordPress o el plugin JWT Auth manejen esta respuesta correctamente, pero tal vez no. Los encabezados y solicitudes de respuesta completa se encuentran a continuación.
Estaba buscando en Internet arreglos a este respecto y no pude encontrar una buena dirección sobre cómo proceder. Cualquier ayuda o idea será muy apreciada. ¡Gracias!
Nota: Entiendo que este punto final no requiere autenticación, pero hay otros que planeo alcanzar.
—–
General:
URL de solicitud: https: //[redacted].com / wp-json / wp / v2 / posts
Método de solicitud: OPCIONES Código de estado: 403 Dirección remota prohibida: #. #. #. #: 443 Política de recomendación: estricta cuando se inicia de forma cruzada
Encabezados de respuesta:
Access-Control-Allow-Credentials: verdadero Access-Control-Allow-Headers: Authorization, Access-Control-Control-Allow-Methods: OPTIONS, GET, POST, PUT, PATCH, DELETE Access-Control-Allow-Origin: https: //type.test
Encabezados de exposición de control de acceso: X-WP-Full Connection, X-WP-TotalPages: Keep-Live Longitud del contenido: 110 Tipo de contenido: application / json; charset = UTF-8 Fecha: Viernes 12 de julio de 2019 13:59:26 GMT Keep-Alive: tiempo de espera = 5, máx. = 99 Enlace:https: //[redacted].com / wp-json / & gt;; rel = «https://api.w.org/ ”; Servidor: Apache / 2.4.29 (Ubuntu) Varios: Origen X-Content-Type-Options: nosniff X-Robots-Tag: noindex
Solicitar encabezados
⚠️ Los encabezados temporales se muestran Encabezados con control de acceso-Falta: Modo de control de acceso autorizado-Falta: OBTENER DNT: 1 Base: https: //type.test
Árbitro: https: //type.test/
Agente de usuario: Mozilla / 5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit / 537.36 (KHTML, similar a Gecko) Chrome / 75.0.3770.100 Safari / 537.36
—–
Aquí está el error que recibo en mi consola:
OPCIONES https: //[redacted]/ wp-json / wp / v2 / post 403 (Prohibido) Acceso por ‘https: //[redacted].com / wp-json / wp / v2 / posts & # 8217; desde el origen ‘https: //type.test ‘; Bloqueado por la política de CORS: la respuesta a la solicitud de pruebas preliminares no coincide con la verificación de control de acceso: no tiene el estado HTTP correcto.
(@gappiah)
Hace 1 año, 4 meses
Hola,
No responda … pero quiero decir que el sitio de WordPress StackOverflow podría ser un buen lugar para preguntas como esta que son relativamente altas y están orientadas al desarrollador.
https://wordpress.stackexchange.com/
¡Buena suerte!
(@pravnkay)
Hace 11 meses, 3 semanas
Espero que no sea demasiado tarde para publicar esto. Encontré el mismo problema. Cuando agregué esta función a functions.php, mi problema se resolvió
add_action( 'init', 'handle_preflight' );
function handle_preflight() {
$origin = get_http_origin();
if ( $origin == 'http://localhost:8080' || $origin == 'https://yourapp.firebaseapp.com') {
// You can set more specific domains if you need
header("Access-Control-Allow-Origin: " . $origin);
header("Access-Control-Allow-Methods: POST, GET, OPTIONS, PUT, DELETE");
header("Access-Control-Allow-Credentials: true");
header( 'Access-Control-Allow-Headers: Authorization' );
if ( 'OPTIONS' == $_SERVER['REQUEST_METHOD'] ) {
status_header(200);
exit();
}
}
}
(@guntercn)
Hace 10 meses, 2 semanas
Hola tengo el mismo error
La autenticación JWT es el back-end de WordPress o la aplicación de Apple
Tengo un POST de Endpoint
register_rest_route ($ this-> namespace, ‘/’. $ base. ‘/ crmvalidation’, edit (edit (‘methods’ => WP_REST_Server :: CREATABLE, ‘callback’ => edit ($ this, ‘customer_validation’), ‘allow_callback’ => editar ($ this, ‘current_user_is_online’), // registrar_user_permissions_check ‘args’ => $ this-> get_endpoint_args_for_item_schema (verdadero),),));
———–
el problema es que el primer método de demanda es las OPCIONES en lugar de la OBTENCIÓN
Esta respuesta fue modificada hace 10 meses, hace dos semanas por.
¿Solucionó tu problema??
0 / 0