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 replies (on page 1 of 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.

映画やテレビ番組が見つかりませんか?ログインして作成してください。

全般

s 検索バーに移動する
p プロファイルメニューを開く
esc 開いているウィンドウを閉じる
? キーボードショートカットウィンドウを開く

メディアのページ

b 戻る(または該当する場合は親に)
e 編集ページに行く

テレビ番組のシーズンのページ

(右矢印)次のシーズンに行く
(左矢印)前のシーズンに戻る

テレビ番組のエピソードのページ

(右矢印)次のエピソードに進む
(左矢印)前のエピソードに戻る

全ての画像のページ

a 画像追加ウィンドウを開く

全ての編集ページ

t 翻訳選択を開く
ctrl+ s フォームを送信する

ディスカッションのページ

n 新しいディスカッションを作成する
w 監視ステータスを切り替える
p 公開/非公開を切り替える
c 閉じる/開くを切り替える
a アクティビティを開く
r ディスカッションに返信
l 最後の返事に行く
ctrl+ enter メッセージを送信する
(右矢印)次のページ
(左矢印)前のページ

設定

このアイテムを評価したり、リストに追加したりしたいですか?

ログイン

メンバーではありませんか?

登録してコミュニティに参加