JetClient عبارة عن مكون إضافي بسيط وقوي لعميل واجهة برمجة التطبيقات (API) لـ JetBrains IDEs (IntelliJ IDEA وGoLand وPyCharm وPhpStorm وما إلى ذلك). فهو يجمع بين أفضل الميزات لعملاء واجهة برمجة التطبيقات (API) الحاليين مع تحسينات إضافية، كل ذلك ضمن بيئة التطوير المتكاملة (IDE) الخاصة بك. تشمل الميزات الرئيسية ما يلي:
مزامنة الملفات (Git Sync) : يقوم بتخزين الطلبات والمجلدات بتنسيق يمكن قراءته بواسطة الإنسان على نظام الملفات الخاص بك، مما يتيح سهولة المشاركة والتعاون مع فريقك عبر Git.
مجموعات البيئة : قم بإنشاء مجموعات بيئة لتحديد بيئات متعددة في وقت واحد. على سبيل المثال، مجموعة واحدة لـ (dev، test، prod) وأخرى لـ (user، admin).
إدارة مريحة للمتغيرات : يتم تعريف المتغيرات بتنسيق JSON5 ويتم تنظيمها في محررين: مشترك (متزامن) ومحلي (غير متزامن). يمكن أن تتضمن المتغيرات ليس فقط الأنواع البدائية ولكن أيضًا الكائنات والمصفوفات.
برمجة نصية قوية : كتابة الطلبات المسبقة والنصوص التجريبية للطلبات والمجلدات. بالإضافة إلى ذلك، قم بإنشاء مجموعة برامج نصية للاختبار يمكنها إعادة استخدام الطلبات الموجودة، مما يلغي الحاجة إلى تكرارها.
التكامل مع كود المصدر وOpenAPI : استيراد واجهات برمجة التطبيقات مباشرة من كود المصدر الخاص بك، والتنقل بسهولة بين الطلبات والكود المقابل، والعكس صحيح.
دعم GraphQL : يتكامل بسلاسة مع البرنامج الإضافي GraphQL الخاص بـ JetBrains لتسليط الضوء على بناء الجملة وإكمال التعليمات البرمجية.
شاهد فيديو البرنامج الإضافي لـ JetClient للتعرف على ميزات البرنامج الإضافي.
مشروع
مزامنة الملفات (Git Sync)
البيئات
المتغيرات
البرامج النصية
ملفات تعريف الارتباط
الوكيل
المتشعب/2
يستورد
مساهمة
خصوصية
المشروع عبارة عن مجموعة جذرية تتكون من المجلدات والطلبات. يتضمن الإعدادات والبيئات والمتغيرات الخاصة به والبرنامج النصي init. المشاريع في JetClient مستقلة عن مشروع IDE، ويمكنك الحصول على مشاريع JetClient متعددة ضمن مشروع IDE واحد.
تتيح مزامنة الملفات (Git Sync) حفظ واستعادة مجموعات الطلبات الخاصة بك على نظام الملفات المحلي. يتيح ذلك سهولة مشاركة المجموعات مع فريقك عبر Git أو أي نظام آخر للتحكم في الإصدار (VCS).
تمكين المزامنة: قم بتشغيل المزامنة عند إنشاء مشروع JetClient جديد أو في إعدادات المشروع.
تعيين مسار المزامنة: حدد مسار الدليل حيث سيتم تخزين ملفات المزامنة.
حفظ أو استعادة: انقر بزر الماوس الأيمن على جذر المشروع أو طلب/مجلد محدد، واختر Save All
أو Save
للحفظ. لاستعادة الاختلافات أو عرضها، حدد الخيارات المقابلة من نفس قائمة السياق.
لاستبعاد مجلد معين من المزامنة، قم بتعطيل المزامنة في خصائصه. سيتم تطبيق هذا التغيير على كافة المجلدات المتداخلة أيضًا.
تتيح البيئات استخدام مجموعات مختلفة من المتغيرات لسياقات مختلفة. ويتم تنظيمها في مجموعات بيئية ، ويمكنك تحديد بيئات متعددة في وقت واحد، واحدة من كل مجموعة.
تتوفر مجموعة البيئة Default
دائمًا، وتتضمن عادةً بيئات مثل Local
و Staging
و Production
. يمكنك أيضًا إنشاء مجموعات البيئة الخاصة بك، مثل User
Client
Region
API Version
وغيرها.
يتم تعريف البيئات لكل مشروع ويمكن إنشاؤها في علامة التبويب Environments
. يتم تعيين المتغيرات لهذه البيئات في علامة التبويب Variables
.
يمكن تعريف المتغيرات في JetClient على مستويات مختلفة: المشروع والمجلد ووقت التشغيل.
متغيرات وقت التشغيل: يتم تحديدها في البرامج النصية وتكون متاحة فقط أثناء تنفيذ البرنامج النصي.
متغيرات المشروع والمجلدات: يتم تحديدها في علامة التبويب Variables
الخاصة بالمشروع أو المجلد، باستخدام تنسيق JSON5.
ينقسم محرر المتغيرات إلى قسمين: مشترك ومحلي .
يتم حفظ المتغيرات المشتركة في ملف مزامنة المشروع/المجلد ويمكن مشاركتها مع فريقك.
يتم تخزين المتغيرات المحلية بشكل آمن على نظامك ولا يتم تضمينها في ملف المزامنة.
تشتمل متغيرات المشروع على المتغيرات الخاصة بالبيئة والمتغيرات globals
، والتي يمكن الوصول إليها بغض النظر عن البيئة المحددة. يتم تنظيمها داخل كائن JSON مع البيئة كخاصية ذات مستوى أعلى:
{ العالمية: {baseUrl: 'https://api.example.com' }, محلي: {الرمز المميز: 'localToken' }, ديف: {الرمز المميز: 'devToken' }}
يمكن أن تتضمن متغيرات المجلد متغيرات عامة ومتغيرات خاصة بالبيئة. يمكن الوصول إلى المتغيرات العامة بغض النظر عن البيئة المحددة، بينما لا تتوفر المتغيرات الخاصة بالبيئة إلا عند تحديد البيئة المقابلة:
{ myFolderVar: 'myValue'، ديف: {myFolderVar: 'devValue' }}
يمكن أن تكون المتغيرات في JetClient أنواعًا وكائنات ومصفوفات بدائية، ويمكن استخدامها في البرامج النصية والطلبات والمجلدات. للاستفادة من متغير في أي حقل، ضعه بين قوسين متعرجين مزدوجين: {{myVar}}
. يمكنك الإشارة إلى كائنات أو مصفوفات بأكملها، على سبيل المثال في نص الطلب، باستخدام {{myRequestBody}}
.
يمكن للمتغيرات أيضًا أن تشير إلى متغيرات أخرى، كما هو موضح في المثال أدناه:
{ المصفوفة: [{ myProperty: 123} ]، // يتحول هذا المتغير إلى السلسلة "123" myVar: '{{array[0].myProperty}}'، // يتحول هذا المتغير إلى الرقم 123 myVar2: {{array[0].myProperty}}}
يتم حل المتغيرات بالترتيب التالي، من الأولوية الأعلى إلى الأقل أولوية:
متغيرات وقت التشغيل
متغيرات المجلدات المحلية الخاصة بالبيئة
متغيرات المجلدات المشتركة الخاصة بالبيئة
متغيرات المجلد المحلي
متغيرات المجلد المشترك
المتغيرات من كافة المجلدات الأصل
متغيرات البيئة
الكرة الأرضية
يمكن أن تحتوي الطلبات والمجلدات في JetClient على برامج نصية للطلب المسبق والاختبار مكتوبة بلغة JavaScript، بينما تحتوي مجموعات الاختبار على برامج نصية للاختبار فقط. يتضمن المشروع برنامج Init Script يتم تنفيذه مرة واحدة في كل عملية تشغيل، والذي يمكن استخدامه لتحديد الوظائف والمتغيرات العامة. على سبيل المثال:
CryptoJS = require("crypto-js");hmacSHA256 = (message) => {return CryptoJS.HmacSHA256(message, jc.environment.get('secret')).toString();}
يمكنك بعد ذلك استخدام CryptoJS
و hmacSHA256
في الطلب المسبق والبرامج النصية للاختبار.
يتم تنفيذ البرامج النصية بالترتيب التالي عند إرسال طلب أو تشغيل مجلد باستخدام العداء:
البرنامج النصي الأولي للمشروع (يتم تنفيذه مرة واحدة لكل تشغيل)
البرامج النصية للطلب المسبق لجميع المجلدات الرئيسية (من الجذر إلى المجلد الحالي)
نص الطلب المسبق للطلب
اختبار البرامج النصية لجميع المجلدات الأصلية (من الجذر إلى المجلد الحالي)
اختبار البرنامج النصي للطلب
يتم تكرار الخطوات من 2 إلى 5 لكل طلب في التشغيل.
بالنسبة لمجموعات الاختبار، يتم تنفيذ البرامج النصية بهذا الترتيب:
البرنامج النصي الأولي للمشروع
اختبار النصي لمجموعة الاختبار
تتبع البرامج النصية من jc.runRequest
أو jc.runFolder
أو jc.runTestSuite
نفس ترتيب التنفيذ كما هو الحال مع الطلبات والمجلدات ومجموعات الاختبار.
تشبه مكتبة JetClient المدمجة مكتبة Postman ولكن بدلاً من pm
يطلق عليها اسم jc
. على سبيل المثال،
jc.test("رمز الحالة هو 200"، () => {jc.expect(jc.response.code).to.eql(200)})
يمكن للبرامج النصية لـ JetClient الاستفادة من Chai Assertion Library BDD. لمزيد من التفاصيل، راجع وثائق مكتبة JetClient. راجع أيضًا أنواع مكتبة JetClient للتعرف على تعريفات الأنواع.
يتضمن JetClient مكتبات مدمجة مثل ajv
و atob
و btoa
و chai
و cheerio
و crypto-js
و csv-parse/lib/sync
و lodash
و moment
و tv4
و uuid
و xml2js
، والتي يمكنك استيرادها باستخدام الوظيفة require
. بالإضافة إلى ذلك، يمكنك إضافة مكتباتك الخاصة إلى البرامج النصية. انتقل إلى Settings > Tools > JetClient
وقم بتعيين Libraries directory
. إذا كنت تستخدم مكتبات npm، فحدد الدليل الذي يحتوي على package.json
و node_modules
. بخلاف ذلك، استخدم الدليل الذي توجد به مكتبات البرامج النصية الخاصة بك. يمكنك بعد ذلك استخدام require لاستيراد مكتباتك.
إدارة ملفات تعريف الارتباط باستخدام Cookies Manager
. لفتحه، انقر فوق Cookies Manager
في شريط الأدوات في نافذة الأداة.
يتم دعم الوكلاء باستخدام إعدادات وكيل IDE.
لإرسال طلب باستخدام بروتوكول HTTP/2
، يرجى تحديد خيار HTTP/2
في Settings > Tools > JetClient > HTTP Version
.
يدعم JetClient استيراد المجموعات من مصادر مختلفة:
مشروع جيت كلينت
ربيع
جاكس-RS
التحديثية
واجهة برمجة التطبيقات المفتوحة (Swagger)
حليقة
ساعي البريد
لاستيراد طلب cURL، ما عليك سوى نسخ أمر cURL ولصقه في حقل URL الخاص بالطلب.
إذا كنت ترغب في تحسين الوثائق، يرجى تقديم العلاقات العامة.
اقتراحات لمواصلة تحسين المنتج.
دون اتصال فقط: JetClient هو مكون إضافي دون اتصال فقط ولا يجمع أي بيانات.
التخزين الآمن: يتم تخزين المتغيرات المحلية وملفات تعريف الارتباط ورموز OAuth2 بشكل آمن على نظامك. يتضمن ذلك استخدام KeePass على Windows، وKeychain على macOS، وlibsecret على Linux.
لا توجد مزامنة سحابية: لا توجد مزامنة خلفية أو سحابية. يتم تخزين البيانات الحساسة بشكل آمن على النظام الخاص بك. يتم حفظ البيانات الأخرى في دليل .idea/JetClient
الخاص بمشروعك وفي ملفات مزامنة JetClient إذا تم تمكين المزامنة.