retrofit

3 سال پیش توسط سپهر مرعشی مطرح شد
آفلاین
user-avatar
سپهر مرعشی ( 380 تجربه )
3 سال پیش
تخصص : برنامه نویسی اندروید

لینک کوتاه اشتراک گذاری

0

من یک اپ نوشتم که برای ارتباط با سرور از رتروفیت استفاده کردم که از هفته پیش بدون این که تغییری توی اپ داده بشه دیدم که نمیتونه با سرور درست ارتباط برقرار کنه... اومد تست کردم یک پروژه جدید ساختم برای تست و یک بار با رتروفیت و یکبار با http ریکوئست فرستادم واسه سرور و http سالم کار میکرد ولی رتروفیت error time out میده.

آفلاین
user-avatar
وحید رضازاده ( 17169 تجربه )
3 سال پیش
تخصص : برنامه نویس

لینک کوتاه اشتراک گذاری

0

@sepehr13494
سلام
چند روزی هست اینترنت مشکل داره و خیلی کند هست
خطای Timeout هم به همین خاطر هست
باید Request Timeout رو افزایش بدین

final OkHttpClient okHttpClient = new OkHttpClient.Builder()
    .readTimeout(60, TimeUnit.SECONDS)
    .connectTimeout(60, TimeUnit.SECONDS)
    .build();
retrofit = new Retrofit.Builder()
                    .baseUrl(BASE_URL)
                    .client(okHttpClient)
                    .addConverterFactory(GsonConverterFactory.create())
                    .build();
آفلاین
user-avatar
سپهر مرعشی ( 380 تجربه )
3 سال پیش
تخصص : برنامه نویسی اندروید

لینک کوتاه اشتراک گذاری

0

خب پس چرا وقتی درخواست عادی با HttpURLConnection میزنم سریع میاره؟
یعنی به نظر شما درست میشه خودش؟ و اینکه متد شما رو هم تست کردم بعد از 60 ثانیه باز تایم اوت میده

آفلاین
user-avatar
وحید رضازاده ( 17169 تجربه )
3 سال پیش
تخصص : برنامه نویس

لینک کوتاه اشتراک گذاری

0

@sepehr13494
شاید Timeout ها متفاوته خب
بله باید درست شه
چون نت ایران خیلی ضعیفه معمولا Timeout رو میبریم بالا
ببرین بالا بهتره

آفلاین
user-avatar
سپهر مرعشی ( 380 تجربه )
3 سال پیش
تخصص : برنامه نویسی اندروید

لینک کوتاه اشتراک گذاری

0

مشکل با اضافه کردن User-Agent به header حل شد به این شکل که در اینترفیس رتروفیت بالای هریک از درخواست ها کد:

@Headers("User-Agent: <Your-App-Name>")

رو اضافه کنید.

برای ارسال پاسخ لازم است، ابتدا وارد سایت شوید.