دعم الموقع

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 ردود (على هذه الصفحة 1 من 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 أرسل رسالتك
(السهم الايمن) الصفحة التالية
(السهم الايسر) الصفحة السابقة

الاعدادات

هل تريد تقييم او اضافة هذا العنصر للقائمة؟

تسجيل الدخول