Command Palette

Search for a command to run...

מק

מקודד/מפענח כתובת URL

קידוד ופענח כתובות אתרים, מחרוזות שאילתות ונתוני טופס עם מצבי EncodeUricomponent, EncodeURI או FORM-UrlenCoded

מהו מקודד/מפענח כתובות אתרים?

מקודד/מפענח כתובות אתרים ממיר טקסט אל ומאחוז קידוד (נקרא גם קידוד כתובת URL), סכימת הבריחה המוגדרת על ידי RFC 3986 שהופכת מחרוזות שרירותיות לבטוחות להכנסת כתובת URL. תווים כמו &, =, ?, # ו/ הם בעלי משמעות מבנית בכתובות URL - אם ערך מחרוזת שאילתה מכיל "&" מילולי, השרת יחלק את הפרמטר שלך לשניים אלא אם התו הזה נמלט כ-% 26. כלי זה נותן לך את כל שלושת גרסאות הקידוד שמפתחים נתקלים בהם: encodeURIComponent עבור ערכים בודדים, encodeURI עבור כתובות URL מלאות, ואפליקציה/x-www-form-urlencoded (רווחים כ-+) עבור גופי טופס HTML.

ההבחנה בין מצבים חשובה יותר ממה שרוב ההדרכות מודים. EncodeUriComponent בורח מכל מפריד שמור, כך שזו הבחירה הנכונה עבור פרמטר שאילתה בודדת, קטע נתיב או יעד הפניה המוטמע ב-URL אחר - אך הפעלתו על כתובת URL מלאה תשלב את https:// ל-HTTPs%3A%2F%2F. EncodeURI משמרת את המפרידים (: / ? # & =) אז כתובת URL שלמה נשארת ניתנת לניווט בעוד רווחים ותווים שאינם ASCII כמו é או 日本 עדיין נמלטים לטופס המקודד ב-UTF-8 אחוז. מצב ה-form-coded תואם את מה שדפדפנים שולחים כאשר אתה שולח <form>: זהה ל-EncodeEuriComponent למעט רווחים הופכים ל-"+" במקום "%20" - מוזרות מדור קודם שעדיין מפעילה אינטגרציות של API היום.

הכל פועל 100% בצד הלקוח בדפדפן שלך באמצעות אותו encodeURIComponent מקורי, encodeURI ו decodeURIComponent פונקציות הייצור שלך JavaScript משתמש, כך תוצאות להתאים בדיוק מה הקוד שלך יפיק שום דבר שאתה להדביק - OAuth callback URLs, חתום S3 קישורים, אסימונים, מזהה הפעלה - אי פעם עוזב את המכונה שלך המפענח גם תופס קלט פגום (תועה % לא ואחריו שתי ספרות hex זורק URIError ב JavaScript) ומדווח על שגיאה ברורה במקום להיכשל בשקט.

דוגמה מעובדת מראה כיצד שלושת המצבים של מקודד ומפענח כתובת URL זה שונים על אותו טקסט. הקלד קפה וקרם ולחץ על קידוד עם רכיב encodeURIC שנבחר: הפלט הוא caf% C3%A9%20%26%20cr%C3%A8me. החלף מצב לאפליקציה/x-www-form-urlencoded וקודד שוב, והרווחים הופכים ל-+, נותנים ל-caf% C3%A9+%26+cr%C3%A8me. במצב encodeURI ה-& נשאר כפי שהוא, מכיוון ש-encodeURI מתייחס אליו כאל מפריד כתובת URL, וזו הסיבה שמצב זה מתאים לכתובת URL שלמה ולא לערך אחד. הפענוח הופך את + בחזרה לרווח.

כיצד להשתמש במקודד/מפענח URL?

  1. הדבק את הטקסט או כתובת האתר שלך

    שחרר את הערך הגולמי לאזור הקלט - ערך פרמטר שאילתה, כתובת URL מלאה עם רווחים ו-unicode, או מחרוזת מקודדת כמו a%3d1%26b%3d2 שלפת מיומני השרת ורוצה לפענח.

  2. בחר את מצב הקידוד

    בחר EncodeUriComponent עבור ערכים בודדים (פרמטרי שאילתה, מקטעי נתיב), EncodeURI עבור כתובות אתרים מלאות שבו :// ו-? חייב לשרוד, או Form-Urlencod כאשר אתה בונה גוף טופס HTML או מאתר באגים במטען פוסט עם + שלטים.

  3. לקודד או לפענח

    לחץ על קידוד כדי לקוד באחוזים את הקלט, או לפענח כדי להפוך אותו. הפענוח מטפל ברצפי %xx ובמצב צורה, ממיר + חזרה לרווחים. רצפים שגויים מייצרים שגיאה קריא במקום פלט ריק.

  4. העתק או החלף

    העתק את התוצאה ללוח שלך בלחיצה אחת, או השתמש בלחצן ההחלפה כדי להעביר את הפלט בחזרה לקלט - שימושי כאשר ערך קודד כפול (%2520) וזקוק למעבר פענוח שני.

תכונות מפתח

  • שלושה מצבי עולם אמיתי

    encodeURIComponent, encodeURI, ו-application/x-www-form-urlencoded - שלוש הגרסאות שאתה פוגש במחרוזות שאילתות, כתובות URL מלאות וגופי טופס

  • קידוד JavaScript מקורי

    משתמש בפונקציות הקידוד המקוריות של הדפדפן, כך שתווים ללא הזמנה של RFC 3986 (AZ az 0-9 - _ . ~) עוברים דרך רצפים ללא נגיעה ו-UTF-8 מרובי בתים מקודדים בצורה נכונה. כמו JavaScript משלך, הוא גם משאיר '() * לא נמלט, אשר RFC 3986 שומר

  • פענוח בטוח עם שגיאות ברורות

    רצפי אחוז שגוי כמו "%" תועה בדיוק מה השתבש במקום לזרוק urierror לא מטופל

  • החלפת קלט ופלט

    לחיצה אחת מעבירה את התוצאה חזרה לקלט - מושלם לפתיחת ערכים מקודדים כפולים שכבה אחר שכבה

Frequently Asked Questions

השתמש ב-EncodeUriComponent עבור ערך בודד שנכנס לתוך כתובת URL - פרמטר שאילתה, קטע נתיב או ערך קובץ cookie - מכיוון שהוא בורח ממפרידים כמו &, =, / ו-?. השתמש ב-EncodeURI רק כאשר יש לך כתובת URL שלמה ואתה רוצה לברוח מתווים לא חוקיים (רווחים, Unicode) מבלי להרוס את המבנה שלו. כלל אצבע: אם המחרוזת מכילה :// שאמור להישאר שלם, השתמש ב-EncodeURI; אחרת השתמש ב-EncodeUriComponent.

Comments

0 comments

0/2000 characters

No comments yet. Be the first to share your thoughts!

url encoderurl decoderpercent encodingencodeuricomponentencodeuriquery string encoderurlencodeform urlencodedrfc 3986uri escapeurl encoder decoder onlineurl encoder decoderurl encoder and decoderencoder decoder url