Axuda de The Movie Database

I'm building an IMDB-like app for a college assignment in react native, and i'm having trouble with the multi search function.

when i have my endpoint search for movies, everything works just fine, but if i change the endpoint to search tv shows or multiple search, it returns empty for some reason.

would be glad if anyone might help.

6 respostas (na páxina 1 de 1)

Jump to last post

Hi @Gunlol, to get assistance, please supply the api urls you are using. Replace your api key with a string like API_KEY or xxxxxxx.

const apiBaseUrl = `https://api.themoviedb.org/3`

as it says, this is the base URL

const searchMoviesEndpoint = `${apiBaseUrl}/search/movie?api_key=${apiKey}`

this is the URL end point i'm using. if i replace the movie with tv or multi (as in the documentation), i get an empty array as the result.

const apiCall = async (endpoint, params) => {
    const options = {
        method: 'GET',
        url:endpoint,
        params: params? params: {language: 'en-US'}
    }

    try {
        const response = await axios.request(options)
        return response.data

    }catch(error) {
        console.log("error: ", error)
        return {}
    }
}

this is the apiCall function i'm using

export const searchMovies = (params)=>{
    return apiCall(searchMoviesEndpoint, params);
}

this is the function for the search im using, that passes the parameters to the apiCall function above

small update, i managed to find out that i am getting a result back from the api call, but for some reason its not storing the result.

im using .map to go over the array that comes back from the api call, but i either have a problem with the .map function or the .length function.

im using react native expo, and the error im having is "cannot read property 'length' of undefined".

everything works fine when i have the endpoint set as: search/movie, but it doesn't work when i have it set as: search/tv or search/multi

Hi @robbie3999,would be glad if you could help me.

hi @Gunlol, I would be glad to help but I don't do javascript coding. I can provide you help with the tmdb api calls as needed.

A quick search of "cannot read property 'length' of undefined" for react/javascript shows this, it looks like you are trying to use the length property on something that is undefined or empty so check the value first before trying to use length.

Non podes atopar unha película ou serie? Inicia sesión para creala.

Global

s amosar a barra de procura
p abrir menú do perfil
esc pechar e abrir xanela
? abrir xanela de atallos do teclado

En páxinas de medios

b atrás (ou á principal se aplica)
e ir a editar páxina

En páxinas de tempadas de televisión

(flecha dereita) ir á tempada seguinte
(flecha esquerda) ir á tempada anterior

En páxinas de episodios de televisión

(flecha dereita) ir ao episodio seguinte
(flecha esquerda) ir ao episodio anterior

En todas as páxinas de imaxe

a abrir a xanela de engadir imaxe

En todas as páxinas de edición

t abrir selector de traducións
ctrl+ s enviar formulario

Nas páxinas de debate

n crear un novo debate
w amosar o estado do seguimento
p mudar público/privado
c mudar abrir/pechar
a abrir actividade
r responder no debate
l ir á última resposta
ctrl+ enter eviar a túa mensaxe
(flecha dereita) páxina seguinte
(flecha esquerda) ir á páxina anterior

Configuración

Queres valorar ou engadir o elemento a unha listaxe?

Iniciar sesión