Soporte de The Movie Database

Hi everyone, i following the guide to create authentication in my React Native APP (using Expo), but I don't understand what I'm doing wrong. If anyone can help me.

I'm making the request for authentication/token/new if the token is generated I do the redirect using the expo's WebBrowser, in the comments I put the return in each of the calls as well as the error.

const getRequestToken = async () => {
    const { data } = await api.get('authentication/token/new', {
      headers: {
        accept: 'application/json',
        Authorization: 'Bearer eyJhbGciOiJIUzI1NiJ9.eyJhdWQiOiJlNmI4Yjc3MWUyNsdfsdfsdfsdfsdfsdfsdfsdYTg5MDA2ZWJhYzNmZSIsInNjbdfgdfgdfgdfgdfgdfgXJzaW9uIjoxfQ.WtNMVZOq59OqBsdfdflQd_nb4D8M8'
      }
    });
    return data.request_token;
  };

  const validateLogin = async (data: SignInSchemaModal, requestToken: string) => {
    const response = await api.post(`/session/new`, {
      headers: {
        Authorization: 'Bearer eyJhbGciOiJIUzI1NiJ9.eyJhdWQiOiJlNmI4Yjc3MWUyNsdfsdfsdfsdfsdfsdfsdfsdYTg5MDA2ZWJhYzNmZSIsInNjbdfgdfgdfgdfgdfgdfgXJzaW9uIjoxfQ.WtNMVZOq59OqBGEsdfdflQd_nb4D8M8'
      },
      data: {
        request_token: requestToken
      }
    });

  };

  const handleSignIn = async (data: SignInSchemaModal) => {
    try {
      const requestToken = await getRequestToken();

// return: {"expires_at": "2024-03-07 00:21:17 UTC", "request_token": "801a42324dfssdf3a8csdasdasdd0c119f4", "success": true}

      const url = `https://www.themoviedb.org/authenticate/${requestToken}?redirect_to=${Linking.createURL("/sign-in")}`
      let result = await WebBrowser.openAuthSessionAsync(url, Linking.createURL("/sign-in"), {})

// return: {"type": "success", "url": "exp://191.144.123.32:8081/--/sign-in?request_token=801a4a444dfssdf3a8csdasdasdd0c119f4&approved=true"}

      if (result.type === "success") {
        await validateLogin(data, requestToken);
      }
    } catch (error) {
      if (error instanceof AxiosError) {
        console.log("Erro : ", error.response?.data);
        // Error:  {"status_code": 7, "status_message": "Invalid API key: You must be granted a valid key.", "success": false}
      } else {
        console.log("Erro desconhecido: ", error);
      }
    }
  };

¿No encuentras una película o serie? Inicia sesión para crearla:

Global

s centrar la barra de búsqueda
p abrir menú de perfil
esc cierra una ventana abierta
? abrir la ventana de atajos del teclado

En las páginas multimedia

b retrocede (o a padre cuando sea aplicable)
e ir a la página de edición

En las páginas de temporada de televisión

(flecha derecha) ir a la temporada siguiente
(flecha izquierda) ir a la temporada anterior

En las páginas de episodio de televisión

(flecha derecha) ir al episodio siguiente
(flecha izquierda) ir al episodio anterior

En todas las páginas de imágenes

a abrir la ventana de añadir imagen

En todas las páginas de edición

t abrir la sección de traducción
ctrl+ s enviar formulario

En las páginas de debate

n crear nuevo debate
w cambiar el estado de visualización
p cambiar público/privado
c cambiar cerrar/abrir
a abrir actividad
r responder al debate
l ir a la última respuesta
ctrl+ enter enviar tu mensaje
(flecha derecha) página siguiente
(flecha izquierda) página anterior

Configuraciones

¿Quieres puntuar o añadir este elemento a una lista?

Iniciar sesión