זוהי הטמעה של קובץ עזר של API v3 Booking Server לשילוב רגיל על סמך Node.js
דרישות מוקדמות
נדרשת התקנה של
תחילת העבודה
לצורך המחשה, שרת ההזמנות מוטמע באמצעות Node.js סטנדרטי ללא ספריות או מסגרות נוספות. אם אתם משתמשים ב-framework אחר, אפשר בקלות לשנות את ההטמעה הזו ל-Express.js, ל-MEAN.js או לכל מסגרת אחרת שמבוססת על Node.js.
כמו כן, ההטמעה לא משתמשת בספריות של מאגר אחסון לפרוטוקולים, אלא מסתמכת על סידור פשוט של JSON ועל שיטות JSON.parse() ו-JSON.stringify() .
כדי להוריד את הפרויקט, מריצים את הפקודה הבאה:
git clone https://maps-booking.googlesource.com/js-maps-booking-rest-server-v3-skeleton
כל בסיס הקוד מורכב משני קובצי JavaScript בלבד:
- Orderserver.js – לוגיקת הטיפול בבקשות ובשרת HTTP, כולל אימות
- apiv3methods.js - שיטות להטמעת ממשק API v3
אחרי שמורידים את הקבצים, אפשר להפעיל את שרת ההזמנות על ידי הרצת הפקודה:
node bookingserver.js
השלד כותב את כל הבקשות הנכנסות והיוצאות במסוף, כך שתוכלו לעקוב אחר הביצוע שלו לצורכי מעקב.
אם יש צורך בסביבת פיתוח משולבת (IDE) לצורכי שינויים בקוד או ניפוי באגים, אפשר להשתמש ב-Visual Studio Code או בכל כלי עריכה אחר שרוצים. צריך לנפות באגים בפרויקט באמצעות הפעלת orderserver.js בסביבת Node.js והגדרת נקודות עצירה (breakpoint) לפי הצורך.
בדיקה של שרת ההזמנות
מורידים את כלי העזר לבדיקת הזמנות. כדי להתקין אותו, צריך לפעול לפי הוראות ההתקנה שמפורטות בדף ה-README שלו.
לצורך הבדיקות, צריך ליצור קובץ טקסט לאחסון פרטי הכניסה. מזינים את שם המשתמש והסיסמה בשורה אחת, למשל, בקובץ בשם cred.txt:
שם משתמש:סיסמה
צריך גם עותק מקומי של פיד הזמינות למוכרים שרוצים לבדוק את המוצרים שלהם. בפקודות לדוגמה שלמטה, פיד הזמינות הוא avail.json.
עכשיו אפשר לבדוק את שרת ההזמנות באמצעות הפקודות הבאות:
- בדיקת קריאות לשיטת HealthCheck:
bin/bookingClient -server_addr="localhost:8080" -health_check_test=true -credentials_file="./cred.txt"
- בדיקת שיחות לשיטת בדיקת הזמינות:
bin/bookingClient -server_addr="localhost:8080" -check_availability_test=true -availability_feed="./avail.json" -credentials_file="./cred.txt"
- בדיקת שיחות לשיטות של CreateBooking ו-UpdateBooking:
bin/bookingClient -server_addr="localhost:8080" -booking_test=true -availability_feed="./avail.json" -credentials_file="./cred.txt"
בזמן הטמעת שרת ההזמנות שלך, ייתכן שיהיה עליך לבצע בדיקות נוספות לגביו (למשל list_bookings_test, rescheduling_test וכו') כשכל הבדיקות יעברו בהצלחה (-all_tests=true).