واجهات برمجة التطبيقات يتيح للمبرمجين بناء أداة مذهلة و التطبيقات حتى مع بيئات مختلفة.
بالنسبة لأولئك الذين قد لا تكون مألوفة مع API ،
ما Api ؟
وفقا ل wikipedia, واجهة برمجة التطبيقات (API) هي مجموعة من روتين تعريفات, البروتوكولات, و أدوات لبناء تطبيق البرمجيات. في الشروط العامة ، انها مجموعة محددة بوضوح أساليب التواصل بين مختلف مكونات البرنامج.
من جانب الخادم واجهة API يتكون عادة من توحيد الطلب-نظام الاستجابة ، وعادة ما يشار إلى خدمات ويب.
لتطوير Api ، يجب اتباع أحد نماذج التصميم مثل:
- بقيةلى>
- الصابونلى>
- تفعيل جافالى>
- XML-RPCلى>
اثنين الأبرز تصميم نماذج API الصابون بقية. الصابون المستخدمة أن تكون شعبية خيار لصنع محددة استخدام Api(s). ولكن الآن يمكنك أن ترى نقلة نوعية من الصابون للراحة. باقي تصميم نموذج اكتسبت شعبية هائلة بسبب انها البساطة و الروعة
كمطور يمكنك اتباع أي واحد وفقا لمتطلبات الخاص بك. دعونا لها نظرة عليها:
الصابون:
باختصار, الصابون(Simple Object Access Protocol) هو البروتوكول مواصفات نقل المعلومات. فإنه يوفر بقوة اكتب رسالة شكل API ، وتعتمد على صيغة XML.
على سبيل المثال طلب:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
POST /url HTTP/1.1 Host: HostServerName Content-type: text/xml; charset=utf-8 Content-length: 350 SoapAction: http://tempUri.org/GetUserInfo ... <?xml version="1.0" encoding="utf-8" ?> <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> <soap:Body> <GetUserInfo xmlns="http://tempUri.org/"> <UserID>1</UserID> <OutputParam /> </GetUserInfo> </soap:Body> </soap:Envelope> |
مثال الرد:
1 2 3 4 5 6 7 8 9 10 11 |
<?xml version="1.0" encoding="utf-8" ?> <SOAP-ENV:Envelope xmlns:xsd="http://www.w3.org/2001/XMLSchema" ...> <SOAP-ENV:Body> <method:MethodNameResponse> <method:MethodNameResult xmlns="" xsi:type="sqlresultstream:SqlResultStream"> <!-- the results are returned here --> </method:MethodNameResult> <method:OutputParam>Value</method:OutputParam> </method:MethodNameResponse> </SOAP-ENV:Body> </SOAP-ENV:Envelope> |
الراحة:
على سبيل المثال طلب:
1 2 3 |
GET /ticket Accept: application/json Content-Type: application |
مثال الرد:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 |
200 OK Content-Type: application/json { "ticket": { "id": 11174, "incrementId": 82, "subject": "ticket subject", "isStarred": null, "isAgentView": true, "isTrashed": false, "source": "website", "group": null, "priority": { "id": 1, "name": "Low", "description": "Low", "color": "#5cb85c" }, "formatedCreatedAt": "21-Dec 10:36am", "totalThreads": "0", "agent": { "id": 1724, "name": "agent name" }, "customer": { "id": 193, "name": "customer name" }, "hasAttachments": 0 } } |
المزيد و المزيد من المواقع مثل uvdesk هي التالية بقية نمط تصميم.
لأن باقي لها العديد من المزايا أكثر من الصابون مثل
- بقية روافع HTTP, لذلك كل ما هو بسيط.لى>
- في بقية البيانات uri هي الأسماء العمل المحددة من قبل HTTP أساليب مثل الحصول على, وضع, بعد, حذف, التصحيح, الرأس.لى>
- Rest API(s) هي أكثر مناسبة للأجهزة النقالة. لذا ، إذا كنت قد تستخدم API لتطبيقات الجوال ثم بقية API هو الخيار الصحيح بالنسبة لك.لى>
- بيانات متعددة الأشكال يمكن أن تدعم مثل سلمان ، YAML, XML, في حين الصابون يوفر فقط تنسيق XML.لى>
- بقية الخدمات cacheable.لى>
- عادة بقية أسرع من الصابون. منذ يستخدم تنسيق JSON بدلا من XML.لى>
- بقية التالية المجتمع كبيرة جدا. لذا يمكنك أن تجد بسهولة مناسبة مكتبة بقية implementaion.
- php: php-crud-api
- symfony: fosrest
- وورد: wp-api
- java: Resteasy
ما هي الخطوة التالية ؟
إذا كان لديك اختيار تصميم مناسب نموذج. ثم البقاء على اتصال القادمة API فئة بلوق . في القادم بلوق, يمكن أن يكون لديك نظرة على موقعنا على كامل الرحلة من API. علاوة على ذلك, سيكون هناك كل نوع من الحيل ، بتعديل النقاط الرئيسية التي تعلمناها في حين النامية بقية API.