نظرة عامة على دعم واجهة برمجة التطبيقات في Azure Static Web Apps
غالبا ما تستدعي تطبيقات الويب الأمامية واجهات برمجة التطبيقات الخلفية للبيانات والخدمات. توفر Azure Static Web Apps نقاط نهاية API بلا خادم مضمنة عبر التكامل مع خدمات Azure.
تتضمن الميزات الرئيسية لواجهات برمجة تطبيقات Azure Static Web Apps ما يلي:
أمان متكامل مع وصول مباشر إلى مصادقة المستخدم وبيانات التخويل المستندة إلى الدور.
التوجيه السلس الذي يجعل
/api
المسار متاحا لتطبيق الويب الأمامي دون الحاجة إلى قواعد CORS مخصصة.
خيارات API
يمكن دمج خدمات Azure التالية مع Azure Static Web Apps:
الخدمة | مُدار | إحضار بياناتك |
---|---|---|
دالات Azure | ✔ | ✔ |
إدارة واجهة برمجة تطبيقات Azure | ✔ | |
Azure App Service | ✔ | |
Azure Container Apps | ✔ |
- واجهات برمجة التطبيقات المدارة: بشكل افتراضي، تتكامل Azure Static Web Apps تلقائيا مع Azure Functions كواجهة خلفية لواجهة برمجة التطبيقات. يمكنك نشر واجهة برمجة تطبيقات مع تطبيق الويب الثابت دون إدارة مورد Azure Functions منفصل.
- إحضار واجهات برمجة التطبيقات الخاصة بك: يمكنك دمج تطبيق الويب الثابت مع واجهات برمجة التطبيقات الموجودة المستضافة في Azure Functions أو API Management أو App Service أو Container Apps. يمكنك إدارة موارد واجهة برمجة التطبيقات ونشرها بنفسك.
إشعار
تتوفر واجهات برمجة التطبيقات الخاصة بك فقط في خطة Azure Static Web Apps Standard. تتوفر واجهات برمجة تطبيقات Azure Functions المضمنة والمدارة في جميع خطط Azure Static Web Apps.
قيود واجهة برمجة التطبيقات
تنطبق القيود التالية على جميع الواجهات الخلفية لواجهة برمجة التطبيقات:
- يمكن تكوين كل بيئة تطبيق ويب ثابتة بنوع واحد فقط من واجهة برمجة التطبيقات الخلفية في كل مرة.
- يجب أن تكون
/api
بادئة مسار واجهة برمجة التطبيقات . - تدعم قواعد التوجيه لواجهات برمجة التطبيقات عمليات إعادة التوجيه وتأمين المسارات بالأدوار فقط.
- يتم دعم طلبات HTTP فقط لواجهات برمجة التطبيقات. WebSocket، على سبيل المثال، غير مدعوم.
- الحد الأقصى لمدة كل طلب API 45 ثانية.
- الواجهات الخلفية المعزولة للشبكة غير مدعومة.
تنطبق القيود التالية على إحضار الواجهات الخلفية لواجهة برمجة التطبيقات الخاصة بك:
- يجب نشر تطبيق إلى تطبيق الويب الثابت قبل حل الطلبات إلى
/api
المسار. - لا يمكن ربط الواجهات الخلفية لواجهة برمجة التطبيقات الخاصة بك ببيئة طلب سحب Static Web Apps.