תכונה זו מאפשרת התקני לוח, שולחן עבודה או התקנים לסדרת חדרים כדי ליזום ולקבל בקשות HTTPs עם שרת HTTPs. התקנים אלה תומכים בשיטות כגון Post, Put, Patch, קבל ומחק, המאפשרות אינטראקציות שונות עם השרת.
באמצעות פקודות מאקרו, באפשרותך לשלוח נתונים לשרת HTTPs בכל עת שתצטרך. יש לך שליטה על הנתונים שנשלחים וכיצד הוא מאורגן, ולכן הוא פשוט להתאים את הנתונים לשימוש עם שירותים קיימים.
אמצעי אבטחה:
-
התכונה ' בקשת לקוח HTTPs ' אינה זמינה כברירת מחדל. מנהל מערכת חייב להפעיל את התכונה באופן מפורש על-ידי הגדרת HttpClient > מצב מופעל
). -
מנהל המערכת יכול למנוע את השימוש ב-HTTP על-ידי הגדרת
ל -false (xConfiguration HttpClient AllowHTTP: false
). -
למנהל המערכת יש אפשרות לציין רשימה של שרתי HTTPs שההתקן מורשה לשלוח אליהם נתונים. (ראה הxCommand HttpClient אפשר פקודות מארח
-
מספר הבקשות בו ב-HTTPs מוגבל.
התצורות שהתייחסו למאמר זה זמינות הן מממשק האינטרנט של ההתקן והן בAPI. פקודות זמינות באמצעות הAPI. קרא את המאמר הגדרות מתקדמות לקבלת מידע כיצד לגשת לממשק האינטרנט ולהשתמש בAPI.
רשימת שרתי HTTPs מורשים
מנהל המערכת יכול להשתמש בפקודות אלה כדי להגדיר ולתחזק רשימה של עד עשרה שרתי HTTPs מורשים (מארחים):
-
xCommand HttpClient לאפשר למארח להוסיף ביטוי: < ביטוי רגיל שתואם לשם המארח או לכתובת הIP של שרת ה-HTTPs >
-
xCommand HttpClient אפשר למארח להבהיר
-
xCommand HttpClient מאפשר רשימת מארח
-
xCommand HttpClient מתן אפשרות להסרת מזהה מארח: מזהה < של ערך ברשימה >
אם הרשימה כוללת ערכי שרת, ניתן לשלוח בקשות HTTPs רק לשרתים אלה. עם זאת, אם הרשימה ריקה, ניתן לשלוח בקשות לשרת HTTPs כלשהו.
הבדיקה מול רשימת השרתים המורשים מתבצעת הן בעת שימוש בהעברה לא מאובטחת (HTTP) ובהעברת נתונים מאובטחת (HTTPS).
HTTPS ללא אימות אישור
בעת שליחת בקשות לפני HTTPS, ההתקן בודק את האישור של שרת ה-HTTPS כברירת מחדל. אם האישור של שרת HTTPS אינו מתגלה כחוקי, מתקבלת הודעת שגיאה. ההתקן אינו שולח נתונים לשרת זה.
אנו ממליצים להשתמש ב-HTTPS עם אימות האישור. אם אימות האישור אינו אפשרי, מנהל המערכת יכול להגדיר xConfiguration HttpClient AllowInsecureHTTPS: on
). הדבר מאפשר להשתמש ב-HTTPS מבלי לאמת את אישור השרת.
שליחת בקשות HTTPs
לאחר הפעלת התכונה ' בקשת לקוח HTTPs ', ניתן להשתמש בפקודות הבאות לשליחת בקשות לשרת HTTPs. < שיטה >
הוא לכתוב
, לשים
, לתקן
, לקבל
או למחוק
.
-
xCommand HttpClient < שיטת > [AllowInsecureHTTPS: < True/False >] [כותרת: < טקסט כותרת >] [ResponseSizeLimit: < מקסימום גודל תגובה >] [ResultBody: < ללא/טקסט רגיל/Base64 >] [פסק זמן: < תקופת זמן קצוב >] כתובת Url: < URL כדי לשלוח את הבקשה ל>
הוספת שדות כותרת היא אופציונלית, וניתן להוסיף עד 20 שדות.
לפרמטר AllowInsecureHTTPS
יש אפקט רק אם מנהל המערכת התיר את השימוש ב-HTTPS מבלי לאמת את אישור השרת. אם כן, באפשרותך לשלוח נתונים לשרת מבלי לאמת את אישור השרת אם הפרמטר מוגדר כ -True
. אם אתה משמיט את הפרמטר או מציב אותו כ -False
, הנתונים לא נשלחים אם אימות האישור נכשל.
הפרמטר ResposenSizeLimit
הוא גודל התוכן המרבי (בתים) שההתקן מקבל כתגובה מהשרת. אם מנת התוכן של התגובה גדולה מהגודל המרבי הזה, הפקודה מחזירה שגיאת מצב. הודעת השגיאה כתוב כי יש חריגה מגודל הקובץ המרבי. עם זאת, לפעולה זו אין השפעה בצד השרת; השרת קיבל ועיבד את הבקשה כהלכה.
השתמש בפרמטר ResultBody
כדי להחליט כיצד לעצב את הגוף של תגובת ה-HTTP מהשרת בתוצאת הפקודה. יש לך שלוש אפשרויות:
-
None
: אל תכלול את הגוף של תגובת ה-HTTP בתוצאת הפקודה. -
Base64
: base64 לקודד את הגוף לפני הכללת אותו בתוצאה. -
טקסט רגיל
: כלול את הגוף בתוצאה כטקסט רגיל. אם התגובה כוללת אותיות שאינן ניתנות להדפסה, הפקודה מחזירה שגיאת מצב עם הודעה המציינת שאירעו נתונים שאינם ניתנים להדפסה.
השתמש בפרמטר ' פסק זמן '
כדי להגדיר תקופת זמן קצוב (שניות). אם הבקשה לא הושלמה במהלך תקופה זו, הAPI מחזירה שגיאה.
הזן את תוכן המנה (נתונים) ישירות לאחר שהנפיקת את הפקודה. כל דבר שתזין, כולל מעברי שורה, הוא חלק ממנה. כאשר סיימת, סיים עם מעבר קו ("\n") ושורה נפרדת המכילה רק נקודה ולאחריו מעבר שורה (".\n"). כעת הפקודה מתבצעת והנתונים נשלחים לשרת.
דוגמאות
גוף ההודעה הוא JSON בשתי הדוגמאות הללו. זו יכולה להיות כל תבנית, בהתאם לתבנית הצפויה של השירות שמקבל את ההודעות.
דוגמה 1: שליטה הרבה בהתקן באמצעות HTTP Post
להלן פונקציית מאקרו ההופכת אור המחובר לגשר גוון של פיליפס:
פונקציה hue_command (נתונים) {var כתובת url = ' http://192.0.2.10/api/'ZXlU4tUtQ23Pjbdyl-kiyCjTs0i5ANDEu1ypJq0-/lights/1/state '; כותרות var = ' תוכן-סוג: יישום/json '; הפקודה var = ' {' on ': true} '; xapi. command (' HttpClient Put ', {' כתובת Url ': כתובת url, ' כותרת ': כותרות}, פקודה);}
ניתן לבצע את אותו הדבר בשורת הפקודה באמצעות הAPI:
xcommand HttpClient לשים את הכותרת: "תוכן-סוג: יישום/json" כתובת: "http://192.0.2.10/api/'ZXlU4tUtQ23Pjbdyl-kiyCjTs0i5ANDEu1ypJq0-/lights/1/state" {"on": true}.
דוגמה 2: רישום נתונים לכלי ניטור באמצעות HTTP Post
xcommand HttpClient לכתוב כותרת: "תוכן-סוג: יישום/json" כתובת: "https://mymonitoringserver.com/service/devicemonitoring" {"הודעה": "משתמש דיווח על בעיה עם המערכת", "systemName": "קומה רביעית", "softwareVersion": "לסה נ 9.6.0", "softwareReleaseDate": "2018-12-13", "videoMonitors": "כפול"}.
מידע נוסף
מצא עוד פרטים על אופן השימוש בבקשות לקוח HTTP במדריך ההתאמה האישית. בחר את הגירסה העדכנית ביותר.
Cisco support (TAC) אינו תומך באיתור באגים של קוד צד שלישי, כולל פקודות מאקרו. אנא בדוק את https://roomos.cisco.com אם אתה זקוק לעזרה עם פקודות מאקרו וקוד של צד שלישי.