Tengo un problema al obtener datos de perfil de la API de Trovo.
El acceso para buscar en 'https://open-api.trovo.live/openplatform/channels/id' desde el origen 'http://localhost:3000' ha sido bloqueado por la política de CORS: campo de encabezado de solicitud access-control-allow- El origen no está permitido por Access-Control-Allow-Headers en la respuesta de verificación previa.
En la documentación de la API dice:
Si realiza llamadas a la API desde el lado del cliente, es posible que encuentre problemas de CORS. Su dominio debe estar en la lista blanca de Trovo para poder realizar llamadas CORS.
Además, agregue el origen en el encabezado cuando realice llamadas entre sitios.
También recibo este error en producción, donde estoy usando mi dominio registrado.
const fetchProfile = async () => { const ress = await fetch( "https://open-api.trovo.live/openplatform/channels/id", { method: "POST", headers: { Accept: "application/json", "Client-ID": `${process.env.TROVO_CLIENT_ID}`, "Content-Type": "application/x-www-form-urlencoded", }, body: '{"username":"test"}', } ).then((res) => res.json());Puede hacer una llamada de proxy.
En el lado del cliente, puede llamar: 3000/trovo o algo como esto
Y en el lado del servidor, haga la llamada al servidor.
cli -> servidor -> trovo -> servidor -> cli
sobrecargas la carga en el servidor, pero evitas cors
Su navegador está impidiendo que su sitio local llame a cualquier recurso que no esté en el mismo dominio. En su paquete.json agregue la línea:
proxy: "https://open-api.trovo.live";y cambie su llamada de búsqueda para que sea:
const ress = await fetch( "/openplatform/channels/id", ...Sin embargo, esto solo funcionará en desarrollo y es posible que aún no funcione. No he usado Trovo, así que no puedo decir exactamente, pero en Sanity tengo que ir a la configuración del proyecto y agregar todos mis dominios en la sección CORS/Lista blanca, que es lo que dice esto:
Si realiza llamadas a la API desde el lado del cliente, es posible que encuentre problemas de CORS. Su dominio debe estar en la lista blanca de Trovo para poder realizar llamadas CORS.