Firebase Admin Node httpAgent: پوشش پروکسی به تفکیک سرویس
پیش از فرض اینکه همه ترافیک SDK از یک پروکسی استفاده میکند، مشخص کنید کدام عملیات Firebase Admin Node از عامل HTTP پیکربندیشده بهره میبرند.
یک فراخوان احراز هویت از طریق پروکسی کار میکند، اما اتصال پایگاه داده ناموفق است. در یک برنامه Firebase این میتواند تفاوت در انتقال باشد نه پروکسی گاهبهگاه.
گزینه برنامه httpAgent در Admin Node SDK برای سرویسهایی اعمال میشود که فراخوانهای REST انجام میدهند، از جمله Auth و Messaging. دامنه مستند آن Realtime Database و Firestore را مستثنی میکند. اشیای اعتبارنامه نیز از طریق روشهای کارخانه اعتبارنامه پیکربندی عامل خود را دارند.
| عملیات ناموفق | پیکربندیای که باید بررسی شود |
|---|---|
| فراخوان سرویس REST ادمین | عامل HTTP برنامه |
| دریافت توکن اعتبارنامه | پیکربندی HTTP شیء اعتبارنامه |
| اتصال پایگاه داده | پشتیبانی انتقال خود کلاینت پایگاه داده |
به همین دلیل افزودن عامل در مقداردهی اولیه نمیتواند تضمین کند که هر اتصال بعدی همان مسیر را طی میکند. پیش از تغییر پیکربندیای که برای سرویس دیگری کار میکند، سرویس و مقصد ناموفق را ثبت کنید.
بحثهای قدیمی نیز ابزار خط فرمان Firebase را با SDKهای برنامه اشتباه میگیرند. اصلاح CLI برای خواندن http_proxy ثابت نمیکند که کلاینت پایگاه داده درون فرایند Node شما از همان گزینه استفاده میکند.
برای انتقالی که واقعاً به آن نیاز دارید از رابط پیکربندی پشتیبانیشده استفاده کنید. وصله زدن یک وابستگی WebSocket تودرتو ممکن است یک اتصال را تحت تأثیر قرار دهد در حالی که مسیر دیگر بیتغییر بماند، و استدلال درباره بهروزرسانی آینده وابستگیها را دشوار میکند.