Estoy tratando de conectarme a la API de Twitter para buscar usuarios usando su nombre de usuario. He leído la siguiente documentación pero todavía no estoy seguro de si estoy haciendo las cosas correctamente:

https://developer.twitter.com/en/docs/twitter-api/users/lookup/api-reference/get-users-by-username-username

Aquí está el código:

Instancia de Axios:

import axios from 'axios';

export default axios.create({
    baseURL:"https://api.twitter.com/2/",
    header: {"Authorization": "Bearer $mybearertoken"}
});

Obtener solicitud

export const searchForUser =(searchTerm)=> async (dispatch) => {

    const response = await twitter.get(`by/username/:${searchTerm}/TwitterDev?user.fields=profile_image_url,name`)

    dispatch({type:SEARCH_FOR_USER,payload:response.data})
};

Soy bastante nuevo en javascript y uso API, así que tengo bastantes preguntas:

  • La documentación utiliza solicitudes curl. Mi comprensión de las solicitudes de curl es limitada, entonces, ¿es posible realizar la misma acción usando nodejs y axios?
  • ¿He definido mi instancia de axios correctamente (por ejemplo, definiendo el encabezado)?
  • Si la respuesta es sí a lo anterior, ¿en qué me equivoco?

También recibo este error en mi consola "Acceso a XMLHttpRequest en 'https://api.twitter.com/2/by/username/:j/TwitterDev?user.fields=profile_image_url,name' from origin 'http: / / localhost: 3000 'ha sido bloqueado por la política de CORS: La respuesta a la solicitud de verificación previa no pasa la verificación de control de acceso: No hay un encabezado' Access-Control-Allow-Origin 'presente en el recurso solicitado ".

El código de error HTTP es 400

0
Sean 30 ago. 2020 a las 19:39

1 respuesta

La mejor respuesta

Parece que su servidor no incluye el encabezado Access-Control-Allow-Origin en respuesta a una solicitud de verificación previa (OPCIONES).

Una solicitud CORS fallará si falta Access-Control-Allow-Origin. Le sugiero que use Node.js para las llamadas a la API si se encuentra con el error CORS.

Aquí hay algunos artículos geniales que explican cómo funciona CORS:

https://www.html5rocks.com/en/tutorials/cors/ https://developer.mozilla.org/en-US/docs/Web/HTTP/Access_control_CORS

2
Dharman 30 ago. 2020 a las 18:36