Yada هي مكتبة ويب لـ Clojure ، مصممة لدعم إنشاء خدمات الإنتاج عبر HTTP.
لديها الميزات التالية:
Yada هي مكتبة شقيق لـ Bidi - في حين تعتمد Bidi على طرق كبيانات ، تعتمد Yada على موارد كبيانات .
يتوفر دليل المستخدم لأحدث الإصدار (1.x) على https://juxt.pro/yada وغير متصل (انظر أدناه).
يمتلك المستخدم أيضًا ككتاب إلكتروني أو PDF ، في Leanpub.
للحصول على أحدث إصدار مستقر ، أضف التبعية التالية إلى project.clj أو build.boot file:
[yada "1.2.15"]
للحصول على أحدث إصدار من ألفا ، أضف التبعية التالية إلى project.clj أو build.boot file:
[yada "1.3.0-alpha9"]
عادة ، يتم إنشاء معالجات YADA من تكوين معبر عنه في البيانات.
( require '[yada.yada :as yada])
( yada/handler
{ :methods
{ :get
{ :produces " text/html "
:response " <h1>Hello World!</h1> " }}})هذا مثال بسيط ، هناك الكثير من الخيارات في Yada مما يمكن التعبير عنه هنا ، ولكن النهج هو نفسه. يمكن أن يكون تكوين البيانات مؤلفًا يدويًا ، أو إنشاؤه بشكل برمجي لإنشاء واجهات برمجة التطبيقات المتسقة على نطاق صناعي.
يتطلب يادا ما يلي:-
الدعم لخبراء الويب الآخرين ، مثل Instertow ، على خريطة الطريق.
إذا كنت ترغب في التأكد من أن الكود لن ينفصل عن الإصدارات المستقبلية لـ Yada ، فيجب عليك فقط استخدام وظائف من مساحات أسماء yada.yada .
أنت حر في استخدام وظائف عامة أخرى في Yada ، ولكن يرجى تحذير من أن هذه يمكن وتغيير بين الإصدارات.
بشكل افتراضي ، فإن Yada عبارة عن بطاريات متطابقة ، مما يجلب عددًا كبيرًا من التبعيات.
ومع ذلك ، تتوفر نسخة أصغر من Yada والتي تقطع Swagger و Swagger-Ui و Json (Cheshire) و Transit و Buddy و Core.async و SSE وغيرها من الدهون.
تنطبق الاختلافات التالية:
لاستخدام متغير Lean (أو أي آخر) من Yada ، حدد المصنف المناسب في project.clj أو build.boot :
[yada/lean " 1.2.15 " ]على الرغم من أن Yada هي مكتبة ، إذا قمت باستنساخ هذا الريبو ، يمكنك تشغيل الوثائق والأمثلة من REPL.
cd yada
lein repl
بمجرد بدء التشغيل ، اكتب وتشغيل ما يلي:-
user> (dev)
dev> (go)
تصفح الآن إلى http: // localhost: 8090.
س: أنا أرتفع من إصدار قبل Yada 1.1 و My Async Multipart وغيرها من التحميلات لا تعمل ، وأحيانًا رمي nullpointerexceptions أو أخطاء أخرى.
أ. إما استخدام وظيفة Yada.Server المدمجة من Yada أو تأكد من بدء خادم Aleph مع خيار raw-stream? :true . تركت الإصدارات السابقة من Yada هذه الإعدادات إلى المستخدم ، لكن من المهم جدًا في Yada 1.1 أن البث الخام؟ تم تعيينه.
يتحدث Yadarians في الغالب في قناة Slack Plus ، هناك أيضًا قناة مخصصة قناة Gitter
أيضا ، هناك مجموعة مناقشة Yada-discuss لمناقشة الأفكار.
لا تتردد في إثارة مشكلات github في هذا المستودع.
طلبات السحب موضع ترحيب. يرجى تشغيل مجموعة الاختبار وتحقق من أن جميع الاختبارات تمر قبل التقديم.
$ lein test
إذا كنت ترغب في إنشاء واختبار الإصدار الخاص بك من Yada ، فيجب أن تكون على دراية بكيفية تثبيت الإصدار الخاص بك محليًا. نظرًا لأن Yada تم تقسيمها إلى عدة مرطبانات Maven ، ولكل منها إعلان الإصدار الخاص بها ، يوجد نص يتيح لك تعيين الإصدار على كل ما تحتاجه.
$ ./set-version 1.3.0-MS-SNAPSHOT
بدلاً من استخدام lein install ، يجب استبدال lein بـ ./treelein .
على سبيل المثال:
$ ./treelein install
سيؤدي ذلك إلى تثبيت جميع الجرار Yada في مستودع Maven المحلي.
بفضل الأشخاص التاليين على الإلهام والمساهمات والتعليقات والاقتراحات.
أيضا ، انظر قائمة التبعية. على وجه الخصوص ، من المؤكد أن يادا لن تكون موجودة دون الجهود الكبيرة من أولئك الذين يقفون وراء المكتبات التالية.
ترخيص معهد ماساتشوستس للتكنولوجيا (MIT)
حقوق الطبع والنشر © 2015-2016 Juxt Ltd.
يتم منح الإذن بموجب هذا ، مجانًا ، لأي شخص يحصل على نسخة من هذا البرنامج وملفات الوثائق المرتبطة به ("البرنامج") ، للتعامل في البرنامج دون تقييد ، بما في ذلك على سبيل المثال لا الحصر حقوق استخدام الأشخاص ونسخها ودمجها ودمجها وتوزيعها وتوزيعها على ما يلي:
يجب إدراج إشعار حقوق الطبع والنشر أعلاه وإشعار الإذن هذا في جميع النسخ أو الأجزاء الكبيرة من البرنامج.
يتم توفير البرنامج "كما هو" ، دون أي ضمان من أي نوع ، صريح أو ضمني ، بما في ذلك على سبيل المثال لا الحصر ضمانات القابلية للتسويق واللياقة لغرض معين وعدم الانفجار. لا يجوز بأي حال من الأحوال أن يكون المؤلفون أو حاملي حقوق الطبع والنشر مسؤولاً عن أي مطالبة أو أضرار أو مسؤولية أخرى ، سواء في إجراء عقد أو ضرر أو غير ذلك ، ناشئة عن أو خارج البرنامج أو الاستخدام أو غيرها من المعاملات في البرنامج.