2012-01-18 16 views
5

एपीआई डिज़ाइन करते समय ध्यान में रखने के लिए कोई सर्वोत्तम प्रथा है जो पिछड़ा संगतता और नई संस्करण रिलीज़ सुनिश्चित करता है। लेख/ब्लॉग के किसी भी लिंक की सराहना की है।पिछली संगतता सुनिश्चित करने के लिए एपीआई डिज़ाइन

उत्तर

5

आपको एपीआई डिज़ाइन के बारे में इस प्रस्तुति को देखना चाहिए। यह Google से है और बहुत अच्छा है। यह पिछड़ा संगतता और नई रिलीज को भी संबोधित करता है।

How to Design a Good API and Why it Matters

+0

http://lcsd05.cs.tamu.edu/slides/keynote.pdf << टूटा लिंक :( – kinar

+2

और अभी भी टूटा हुआ है, शायद यह एक है? Http://static.googleusercontent.com/media/research। google.com/en//pubs/archive/32713.pdf – user180574

+0

लिंक टूटा हुआ है। – Salar

6

यूआरएल में संस्करण के साथ दोनों चलते रहें। api.mysite.com/[version]/api/url/here। उपयोगकर्ताओं को सूचित करें जब एपीआई का एक नया संस्करण आता है, और थोड़ी देर के बाद पुराने संस्करण को छोड़ दें। या तो जब इसका उपयोग नहीं किया जाता है, या 6 महीनों की तरह उपयोगकर्ताओं को बीमा करने के लिए पर्याप्त समय था।

या इसे हमेशा के लिए चलते रहें, लेकिन इसके लिए कोई नई कार्यक्षमता न दें।

+1

यह मूल रूप से दृष्टिकोण है जिसे मैंने कई परियोजनाओं पर उपयोग किया है। एक अन्य पैटर्न जिसे मैंने अक्सर देखा है, एपीआई के नवीनतम संस्करण में 'api.example.com/'बिंदु होना है - एक संस्करण संख्या की कमी पर ध्यान दें। जो ग्राहक नवीनतम और महानतम नहीं चाहते हैं वे संस्करण वाले यूआरएल को हिट करने के लिए स्वतंत्र हैं- 'api.example.com/v1/' – Anurag

+0

कुछ चर्चा है कि क्या आप इसे अभी भी एक आरईएसटी एपीआई कह सकते हैं यदि आप यूआरएल योजना में वर्जनिंग शामिल करते हैं । http://roy.gbiv.com/untangled/2008/rest-apis-must-be-hypertext-driven या http://thereisnorightway.blogspot.com/2011/02/versioning-and-types-in-resthttp देखें -api.html –

+0

धन्यवाद। ये एपीआई के संस्करण और उन पर तैनाती के प्रति अधिक हैं। मुझे यह जानने में दिलचस्पी है कि एपीआई का पर्दाफाश करने के बारे में कोई दिशानिर्देश हैं या नहीं, यदि आपका डेटा स्कीमा बदलता है (आप एपीआई के माध्यम से उजागर किए गए कुछ डेटाटाइप को हटा/संशोधित करते हैं) – Sampat

3

सबसे अच्छा तरीका है नए इंटरफ़ेस और वर्गों के साथ नई रिलीज में पुराने इंटरफ़ेस या वर्ग रखने के लिए ऐसा करते हैं और पदावनत के रूप में (जो भविष्य के रिलीज में हटा दिया जाएगा मतलब है) उन्हें चिह्नित करने के लिए।

सुनें एपीआई डिजाइनर सार्वजनिक इंटरफ़ेस और प्रकाशित इंटरफ़ेस के बीच अंतर के बारे में ध्यान में रखें।

संबंधित मुद्दे