البرمجة

إزالة اسم المرحلة من عناوين URL في AWS API Gateway

عند استخدام Amazon Web Services (AWS) API Gateway لنشر واجهة برمجة التطبيقات (API) الخاصة بك، قد تجد أن اسم المرحلة (Stage Name) يتم إضافته تلقائيًا إلى عنوان URL الذي يتم إنشاؤه للمورد. على سبيل المثال، إذا كان اسم المرحلة هو “test”، فإن عنوان URL الناتج للمورد سيشمل اسم المرحلة. شيء مثل:

https://abcabc.execute-api.us-east-1.amazonaws.com/test/my/path

وما ترغب فيه هو إزالة اسم المرحلة من عنوان URL. لذلك، يمكنك تحقيق هذا الهدف باستخدام بعض الطرق، ومن بين هذه الطرق:

  1. استخدام Custom Domain Name: يمكنك استخدام Custom Domain Name مع API Gateway، وهذا سيسمح لك بتعريف اسم نطاق مخصص لمواردك بدلاً من استخدام النطاق الافتراضي لخدمة API Gateway. عند استخدام Custom Domain Name، يمكنك تحديد العنوان URL بالكامل، بما في ذلك المسار وبدون اسم المرحلة.

  2. إعادة توجيه HTTP (HTTP Redirect): يمكنك استخدام خدمة إعادة توجيه HTTP مثل AWS CloudFront لإنشاء إعادة توجيه تلقائية من العنوان URL الذي يحتوي على اسم المرحلة إلى العنوان URL الذي لا يحتوي على اسم المرحلة.

  3. استخدام قاعدة بيانات ذات حالة: يمكنك استخدام قاعدة بيانات ذات حالة مثل Amazon DynamoDB للإشارة إلى عناوين URL للمورد بدون اسم المرحلة، ثم يمكنك استخدام دالة AWS Lambda متصلة بحدث تغييرات في القاعدة لإنشاء مطابقة بين المسارات والعناوين URL.

  4. تحويل المسار باستخدام AWS Lambda: يمكنك استخدام دالة AWS Lambda متصلة بمرحلة تكامل (Integration Stage) في API Gateway لتحويل طلبات المستخدمين وإزالة اسم المرحلة من المسارات.

  5. استخدام قواعد إعادة التوجيه (Routing Rules): في حال كنت تستخدم API Gateway في إطار التوجيه بناءً على المسارات (Path-Based Routing)، فيمكنك إعداد قواعد إعادة التوجيه لتحويل المستخدمين إلى المسارات الصحيحة دون اسم المرحلة.

تذكر أن كل هذه الخيارات تأتي مع ميزاتها الفريدة واعتمادًا على حالتك الخاصة ومتطلباتك، يمكن أن تكون واحدة من هذه الطرق هي الأكثر ملاءمة بالنسبة لك. قد تحتاج إلى تقييم الأداء والتكلفة والتوافق مع متطلبات عملك قبل اتخاذ قرار نهائي بشأن الطريقة التي تريد استخدامها لإزالة اسم المرحلة من عنوان URL.

المزيد من المعلومات

بالطبع، دعونا نستكمل المقال لتوضيح المزيد حول كيفية تنفيذ الخيارات المذكورة:

  1. استخدام Custom Domain Name:
    استخدام Custom Domain Name يتطلب بعض الخطوات الإضافية. يجب عليك أولاً إنشاء وتكوين DNS لنقطة النطاق المخصص إلى Amazon API Gateway. بعد ذلك، يمكنك إنشاء Custom Domain Name باستخدام خدمة API Gateway في لوحة التحكم الخاصة بك وتكوينها لتوجيه الطلبات إلى مورد API الصحيح دون إضافة اسم المرحلة إلى عنوان URL.

  2. إعادة توجيه HTTP (HTTP Redirect):
    باستخدام AWS CloudFront كخدمة إعادة توجيه HTTP، يمكنك إنشاء توجيه من العنوان URL الذي يحتوي على اسم المرحلة إلى العنوان URL الذي ترغب في استخدامه. يتطلب هذا الخيار إعداد توجيهات معينة في CloudFront لضمان توجيه الطلبات بشكل صحيح.

  3. استخدام قاعدة بيانات ذات حالة:
    يمكنك إنشاء جدول في Amazon DynamoDB لتخزين مطابقات المسارات إلى العناوين URL المرغوبة دون اسم المرحلة. يمكنك بعد ذلك استخدام دالة AWS Lambda للوصول إلى قاعدة البيانات وتحويل الطلبات بناءً على المطابقات المخزنة في الجدول.

  4. تحويل المسار باستخدام AWS Lambda:
    باستخدام دالة AWS Lambda في مرحلة التكامل (Integration Stage) في API Gateway، يمكنك تحويل المسارات الواردة من العملاء لإزالة اسم المرحلة قبل توجيهها إلى المورد المناسب.

  5. استخدام قواعد إعادة التوجيه (Routing Rules):
    يمكنك تكوين قواعد إعادة التوجيه في API Gateway لتوجيه المسارات الواردة من العملاء إلى المورد المطلوب دون الحاجة إلى اسم المرحلة في العنوان URL.

بعد تقديم هذه الخيارات، يجب أن تحدد الطريقة التي تناسب احتياجاتك ومتطلباتك بشكل أفضل. يمكنك أيضًا استشارة ودعم AWS للحصول على مساعدة إضافية في تنفيذ الخيار الذي تختاره. إن تحقيق هذا الهدف سيسمح لك بتنظيم وتبسيط عناوين URL الخاصة بالموارد الخاصة بك في AWS API Gateway بشكل أكثر فعالية.

مقالات ذات صلة

زر الذهاب إلى الأعلى
إغلاق

أنت تستخدم إضافة Adblock

يرجى تعطيل مانع الإعلانات حيث أن موقعنا غير مزعج ولا بأس من عرض الأعلانات لك فهي تعتبر كمصدر دخل لنا و دعم مقدم منك لنا لنستمر في تقديم المحتوى المناسب و المفيد لك فلا تبخل بدعمنا عزيزي الزائر