Mostafa Nazar
4 سال پیش توسط Mostafa Nazar مطرح شد
3 پاسخ

نشان دادن لحظه ای تغییرات در لاراول

سلام
میخواستم بدونم برای اینکه نشان بدیم تغییرات به صورت لحظه ای تغییر میکنه تو لاراول چیکار باید کرد. منظورم این هستش که api از سایت خارجی گرفتیم و میخوایم وقتی مثلا شاخصی تغییری کرد این رو بهمون اطلاعات بده .
با تشکر


ثبت پرسش جدید
محمدحسن یگانه
تخصص : Full-Stack Web Developer Freel...
@mhyeganeh 4 سال پیش مطرح شد
0

از روش های معمولی چنین کاری شدنی نیست تا جایی که میدونم و تا شما درخواست اطلاعات جدید ارسال نکنید نمی تونید متوجه بشید آیا تغییراتی رخ داده یا نه.

یک راه دیگه اش برقراری ارتباط به شکل وب سوکت و دو طرفه هست که در اینصورت باید این کانکشن باز بمونه و اینطوری هر اتفاقی اون طرف بیفته به شما هم خبر داده میشه

یک روش دیگه هم شاید استفاده از web hook ها باشه.

در هر صورت تمامی این راه ها نیازمند اعمال از سمت ارائه دهنده API هست و شما خودتون به تنهایی اگر خواسته باشید کاری انجام بدید تنها راهش ارسال درخواست جدید هست. یا دستی یا اتومات که میشه همون کرالر.


مهدی عقیقی
تخصص : برنامه نویس وب
@MehdiAghighi 4 سال پیش مطرح شد
0

این که اون سایت بهتون اطلاع بده که بستگی به اونا داره !
اگر اون api ی که گرفتید یک webhook طور داشته باشه می‌تونید یک ادرس api شما بهش بدید که هر وقت تغییری رخ داد به سایت شما درخواست بزنه.

در غیر این صورت باید خودتون ساختارش رو درست کنید که مثلا هر یک دقیقه به اون api درخواست بزنید، اطلاعات جدید رو که گرفتید، Broadcast کنید به کاربر‌هایی که لاگین هستند.
برای Broadcast کردن مستندات خود لاراول رو بخونید از websocket برای برقرای ارتباط با کلاینت‌ها استفاده می‌کنه.


علی بیات
تخصص : توسعه دهنده ارشد وب
@ali.bayat 4 سال پیش مطرح شد
0

در قالب معمولی وب
این کار با استفاده از Event ها و Broadcasting انجام میشه..
هر وقت اتفاقی بیفته (رویدادی اتفاق بیفته)، از طریق Broadcasting میشه اون رو در سمت جاوااسکریپت هم دریافت کرد

اما در مورد یک API
بجای کاربر در یک API مفهوم Consumer یا استفاده کننده رو داریم
و اساس کار به این شکله که:

  • Consumer یک ریکوئست به سمت API میفرسته
  • API یک ریسپانس رو برای Consumer برمی‌گردونه

پس وقتی اپلیکیشن شما خودش Consumer یک API دیگه هست...
در بهترین حالت اون API هوک رو ارائه میده و اطلاعات آپدیت شده رو برای شما میفرسته.
در غیر این صورت: شما باید بر اساس مهم بودن اطلاعات، یک بازه زمانی رو انتخاب کنی ( مثلا هر ۱۰ ثانیه) یه درخواست بفرستی و نتایج رو به روز کنی.


برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام