Post API
professor Carlos, sei que foge um pouco do contexto da aula, mais sera que pode me ajudar?
Afim de ter conhecimento didadico estou tentando consumir e fazer requisição de uma API com javascript puro usando Fetch
Consumir esta ok
Mais pra fazer um post estou tendo um erro de cors:
Access to fetch at 'https://produtos.acessohost.com.br/api/products/' from origin 'https://acessohost.com.br' has been blocked by CORS policy: Response to preflight request doesn't pass access control check: Redirect is not allowed for a preflight request.
Mais somente para requisição POST
esse é o link pra a api
https://acessohost.com.br/testeApi/
esse é o codigo js
const form = document.querySelector('#form'); form.addEventListener("submit", function(e){ e.preventDefault(); getValues(this); }); async function getValues(v){ const url = "https://produtos.acessohost.com.br/api/products/"; const data = new FormData(v); console.log(data); const params = { method: 'POST', mode: 'cors', cache: 'default', headers: { "Access-Control-Allow-Origin": "*", "Access-Control-Allow-Headers": "Authorization", "Access-Control-Allow-Methods": "GET, POST, OPTIONS, PUT, PATCH, DELETE" , "Content-Type": "application/json" }, body: JSON.stringify(data) }; const response = await fetch(url, params); const res = await response.json(); console.log("Cadastro", res); }
Olá, Renato!
Como vai?
Qual a versão do Laravel?
Se for uma versão mais antiga, precisa instalar um package de cors, se for uma versão mais atual, não precisa, porque já vem configurado por default;
Minha versão é 9 do laravel e esse erro de cors só apresenta qdo faço requisição post, get flui normal
https://acessohost.com.br/testeApi/
Mais pra fazer um post estou tendo um erro de cors:
Access to fetch at 'https://produtos.acessohost.com.br/api/products/' from origin 'https://acessohost.com.br' has been blocked by CORS policy: Response to preflight request doesn't pass access control check: Redirect is not allowed for a preflight request.
Estou a semanas tentado resolver isso ja pesquisei e nada
meu arquivo cors
'paths' => ['api/*', 'sanctum/csrf-cookie'],
'allowed_methods' => ['*'],
'allowed_origins' => ['*'],
'allowed_origins_patterns' => [],
'allowed_headers' => ['*'],
'exposed_headers' => [],
'max_age' => 0,
'supports_credentials' => false,
Tem um print do erro?
Porque não deveria ter erro de CORS apenas para requisições POST, seria especialmente um erro no retorno da API (com o verbo http GET);
Precisa estar logado para conseguir responder a este ticket!
Clique Aqui Para Entrar!