सामग्री पर जाएं

परिचय

tsoa-next मूल की निरंतरता है tsoa परियोजना, लूक ऑट्री और योगदानकर्ताओं द्वारा स्थापित स्थिर नींव पर निर्माण। यह एक एकीकृत के साथ एक ढांचा है OpenAPI बनाने के लिए कम्पाइलर Node.js सर्वर-साइड एप्लिकेशन का उपयोग करके TypeScript। यह रनटाइम पर एक्सप्रेस, हांपी, कोआ और अधिक ढांचे को लक्षित कर सकता है। tsoa-next अनुप्रयोग डिफ़ॉल्ट रूप से टाइप-सेफ होते हैं और रनटाइम सत्यापन को आसानी से संभालते हैं।

नीचे दिए गए निर्देशों में, tsoa आमतौर पर संदर्भित करता है CLI आज्ञा और अंतर्निहित वास्तुकला tsoa-next जारी है।

गोल

  • TypeScript अपने एपीआई के लिए सत्य के एकल स्रोत के रूप में नियंत्रक और मॉडल
  • मान्य OpenAPI (formerly) Swagger) ऐनक (2.0 या 3.0) आपके नियंत्रकों और मॉडलों से उत्पन्न होता है, जिनमें शामिल हैं:
    • पथ (जैसे GET/Users)
    • परिभाषाओं पर आधारित TypeScript इंटरफेस (मॉडल)
    • पैरामीटर / मॉडल गुण आवश्यकतानुसार या वैकल्पिक के आधार पर चिह्नित TypeScript (जैसे myProperty) स्ट्रिंग में वैकल्पिक है OpenAPI कल्पना)
    • ऑब्जेक्ट विवरण के लिए समर्थित jsDoc (अधिकांश अन्य मेटाडाटा से प्रभावित किया जा सकता है) TypeScript प्रकार)
  • विकल्प के मध्यवेयर के लिए रूट उत्पन्न होते हैं
    • Express, Hapi, और Koa वर्तमान में समर्थित, अन्य मिडलवेयर को एक सरल हैंडलबार टेम्पलेट का उपयोग करके समर्थित किया जा सकता है
    • निर्बाध रनटाइम सत्यापन

दर्शन

  • पर भरोसा TypeScript यदि संभव हो तो एपीआई मेटाडाटा उत्पन्न करने के लिए टाइप एनोटेशन
  • यदि नियमित प्रकार के एनोटेशन मेटाडाटा को व्यक्त करने का उचित तरीका नहीं है, तो डेकोरेटर का उपयोग करें
  • शुद्ध पाठ मेटाडाटा (उदाहरण के लिए समापन बिंदु विवरण) के लिए jsdoc का उपयोग करें
  • बॉयलरप्लेट को छोटा करें
  • मॉडल इंटरफेस (शुद्ध डेटा संरचनाओं) द्वारा सबसे अच्छा प्रतिनिधित्व किया जाता है, लेकिन यह भी वर्गों द्वारा प्रतिनिधित्व किया जा सकता है
  • रनटाइम वैधता tsoa-next जितना संभव हो सके उतना ही व्यवहार करना चाहिए OpenAPI 2/3 स्कीमा वर्णन करता है। सत्यापन तर्क में किसी भी अंतर को लॉगिंग चेतावनी द्वारा स्पष्ट किया जाता है, जिसके दौरान OpenAPI विशिष्टता (ओएएस) और/या मार्ग।
    • कृपया ध्यान दें कि सक्षम करके OpenAPI 3 के बाद से आप विविध सत्यापन तर्क की संभावनाओं को कम करते हैं OpenAPI 3 में एक स्पष्ट स्कीमा वाक्यविन्यास है।

Contributors

No contributors

Changelog

No recent changes

TypeScript-प्रथम OpenAPI जनरेशन, रूट जनरेशन और रनटाइम वैलिडेशन।