Código de status correto para o aplicativo OPÇÕES pré-instalado

Um usuário perguntou ?

Estou tentando consultar meu site WordPress através da API REST recebendo javascript. Para lidar com a autenticação, o Plugin de Autenticação JWT. Posso gerar e restaurar um sinal de acesso com sucesso. No entanto, quando tento usar esse token de acesso para aplicações futuras, a pré-aplicação OPTIONS chega ao fim. código de status. Para. necessário para prosseguir com o pedido. Espero que isso seja algo na configuração do meu site WordPress ou, provavelmente, no servidor em que está hospedado. Espero que o WordPress ou o plugin JWT Auth lide com essa resposta corretamente, mas talvez não. Os cabeçalhos e as solicitações completas de resposta estão abaixo.403 Forbidden200 Okay

Eu estava procurando na internet por correções a esse respeito e não conseguia encontrar um bom endereço sobre como proceder. Qualquer ajuda ou ideia será muito apreciada. Obrigado!

Nota: Entendo que este ponto final não requer autenticação, mas há outros que pretendo alcançar.

—–

Geral:
Solicitar URL: https://[redigido].com/wp-json/wp/v2/posts
Método de solicitação: OPÇÕES Código de status: 403 Endereço remoto proibido: #. #. #. #: 443 Política de Recomendação: Rigorosa quando inter-iniciada

Cabeçalhos de resposta:
Access-Control-Allow-Credentials: true Access-Control-Allow-Headers: Authorization, Access-Control-Control-Allow-Methods: OPTIONS, GET, POST, PUT, PATCH, DELETE Access-Control-Allow-Origin: https://type.test
Access control exposure headers: X-WP-Full Connection, X-WP-TotalPages: Keep-Live Content Length: 110 Tipo de conteúdo: aplicativo / json; charset = UTF-8 Data: sexta-feira, 12 de julho de 2019 13:59:26 GMT Keep-Alive: timeout = 5, max. = 99 Link:https://[redigido].com/wp-json/>; rel = “https://api.w.org/”; Servidor: Apache / 2.4.29 (Ubuntu) Diversos: Fonte X-Content-Type-Options: nosniff X-Robots-Tag: noindex

Cabeçalhos
⚠️ de solicitação Os cabeçalhos temporários são exibidos Cabeçalhos com controle de acesso Faltando: Modo de controle de acesso autorizado – Faltando: GET DNT: 1 Base: ⚠️ Árbitro: https://type.test/
Agente do usuário: Mozilla /5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit / 537.36 (KHTML, semelhante ao Gecko) Chrome / 75.0.3770.100 Safari / 537.36

—–

Aqui está o erro que eu tenho no meu console:

OPÇÕES https:// //[redigido]/ wp-json / wp / v2 / post 403 (Proibido) Acesso por ‘https://[redigido].com / wp-json / wp / v2 / posts & # 8217; da fonte ‘https://type.test’; Bloqueado pela política CORS: A resposta ao pedido de testes preliminares não corresponde à verificação do controle de acesso: não tem o status HTTP correto.

(@gappiah)

1 ano, 4 meses atrás

Olá

Não responda… mas quero dizer que o site StackOverflow WordPress pode ser um bom lugar para perguntas como esta que são relativamente altas e orientadas para desenvolvedores.

https://wordpress.stackexchange.com/

Boa sorte!

(@pravnkay)

11 meses, 3 semanas atrás

Espero que não seja tarde demais para postar isso. Encontrei o mesmo problema. Quando adicionei esse recurso às funções.php, meu problema foi resolvido

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)

10 meses, 2 semanas atrás

Oi eu tenho o mesmo erro

A autenticação JWT é o backend do WordPress ou do aplicativo da Apple

Eu tenho um Endpoint POST

register_rest_route ($ este espaço de nome >, ‘/’. $ base. ‘/ crmvalidation’, edit (‘métodos’ => WP_REST_Server :: CREATABLE, ‘callback’ => edit ($ isso, ‘customer_validation’), ‘allow_callback’ => edit ($ isso, ‘current_user_is_online’), // registrar_user_permissions_check ‘args’ => $ este > get_endpoint_args_for_item_schema (verdade));

———–

o problema é que o primeiro método de demanda é OPÇÕES em vez de GET

Esta resposta foi modificada há 10 meses, há duas semanas.

Resolveu seu problema?

0/0

Isto foi útil?

0 / 0

Deixe um comentário 0

Your email address will not be published. Required fields are marked *