ตัวเข้ารหัสองค์ประกอบ URI
หากคุณเคยส่งค่าอย่าง name=John & Jane เข้าไปใน URL โดยไม่เข้ารหัส คุณรู้ถึงความเจ็บปวด: & ถูกอ่านเป็นพารามิเตอร์ใหม่ และเซิร์ฟเวอร์เห็นข้อมูลขยะ เครื่องมือนี้เข้ารหัสเปอร์เซ็นต์สตริงใด ๆ เพื่อใช้เป็นองค์ประกอบ URI อย่างปลอดภัยตาม RFC 3986 โดยเปลี่ยนอักขระสงวนทุกตัวเป็นคู่ %HH (รวมช่องว่าง) วางส่วนย่อย ค่า query หรือเป้าหมาย redirect แล้วได้สิ่งที่ปลอดภัยสำหรับการต่อเข้าไปใน URL ใด ๆ กลับมา
วิธีเข้ารหัสองค์ประกอบ URI
-
1
วางค่าของคุณ
ใส่ค่าพารามิเตอร์ query เดียว ส่วนของเส้นทาง หรือสตริงส่วนย่อย
-
2
เลือกเข้ารหัสหรือถอดรหัส
สลับทิศทางเพื่อเปลี่ยน percent-escape กลับเป็นอักขระต้นฉบับ
-
3
รันมัน
เครื่องมือเข้ารหัสแต่ละอักขระเป็น UTF-8 แล้วแทนที่ byte สงวนทุกตัวด้วย %HH
-
4
คัดลอกผลลัพธ์
ใส่ผลลัพธ์ลงในเทมเพลต URL หรือไคลเอนต์ API ของคุณโดยตรง
อะไรถูก escape
เครื่องมือนี้ทำตาม RFC 3986: เฉพาะชุดอักขระที่ไม่สงวน A-Z a-z 0-9 - _ . ~ เท่านั้นที่คงไว้ไม่แตะต้อง ทุกอย่างอื่นกลายเป็น UTF-8 ที่ percent-encoded รวมถึงช่องว่างและตัวคั่นย่อย ! * ' ( ) ที่ encodeURIComponent ของ JavaScript จะปล่อยไว้
| อักขระ | เข้ารหัสเป็น |
|---|---|
| ช่องว่าง | %20 |
! |
%21 |
# |
%23 |
& |
%26 |
' |
%27 |
( |
%28 |
) |
%29 |
* |
%2A |
+ |
%2B |
/ |
%2F |
= |
%3D |
? |
%3F |
é |
%C3%A9 |
องค์ประกอบกับ URI เต็ม
เครื่องมือนี้เข้มงวดกว่า encodeURI ซึ่งปล่อย : / ? # [ ] @ ! $ & ' ( ) * + , ; = ไว้เพราะอักขระเหล่านี้เป็นโครงสร้างใน URL สำหรับค่าที่คุณต่อเข้าไปใน query string คุณต้องการรูปแบบเข้มงวด และนั่นคือสิ่งที่เครื่องมือนี้สร้าง: มัน escape แม้แต่ ! ' ( ) * ไปไกลกว่า encodeURIComponent ของ JavaScript หนึ่งขั้น
const url = `/search?q=${encodeURIComponent(userInput)}`;
ข้อผิดพลาดที่พบบ่อย
- การเข้ารหัสซ้ำ: การเข้ารหัสสิ่งที่เข้ารหัสไว้แล้วให้ผล
%2520แทน%20ถอดรหัสก่อนเสมอหากคุณไม่แน่ใจเกี่ยวกับแหล่งที่มา - เครื่องหมายบวกในฟอร์ม: การส่งฟอร์ม HTML เข้ารหัสช่องว่างเป็น
+ไม่ใช่%20ตัวถอดรหัสที่ตาม RFC 3986 อย่างเคร่งครัด (รวมถึงตัวนี้) จะไม่เปลี่ยน+กลับเป็นช่องว่าง ใช้ตัวถอดรหัสที่รู้จักฟอร์มสำหรับกรณีเหล่านั้น - ตัวคั่นเส้นทาง: การเข้ารหัส
/ที่นี่จะเปลี่ยนเป็น%2Fหากคุณต้องการรักษาโครงสร้างเส้นทางจริง ให้รวมเซกเมนต์ก่อนแล้วเข้ารหัสแต่ละเซกเมนต์แยกกัน
คำถามที่พบบ่อย
นี่คือการเข้ารหัสเปอร์เซ็นต์ตาม RFC 3986 รูปแบบเข้มงวด มัน escape :, /, ?, # และอักขระสงวนอื่น ๆ (รวมถึง !, ', (, ) และ *) เพราะองค์ประกอบไม่ควรพกโครงสร้าง URL ไว้ภายใน จึงเข้มงวดกว่า encodeURIComponent ของ JavaScript และเข้มงวดกว่า encodeURI มาก
%20 เป็นวิธีของ RFC 3986 ส่วน + แทนช่องว่างเป็นมรดกจากการเข้ารหัส body แบบ application/x-www-form-urlencoded สำหรับ query string ใน URL %20 ปลอดภัยเสมอ + คาดหวังบนเซิร์ฟเวอร์เฉพาะเมื่อถูกสร้างโดยฟอร์ม POST
แต่ละอักขระถูกเข้ารหัส UTF-8 ก่อน แล้วทุก byte ถูก escape อักขระอย่าง 日 กลายเป็น %E6%97%A5 (สาม byte)
ไม่ ค่าจะถูกเข้ารหัสเปอร์เซ็นต์ที่ฝั่งเซิร์ฟเวอร์เพื่อสร้างผลลัพธ์ของคุณ และไม่ถูกจัดเก็บหรือบันทึก ไม่มีสิ่งที่คุณวางถูกเก็บไว้หลังส่งการตอบกลับ
เครื่องมือที่เกี่ยวข้อง
ตารางอ้างอิง ASCII
ตาราง ASCII ครบตั้งแต่ 0 ถึง 127 พร้อมค่าเลขฐานสิบ ฐานสิบหก ฐานแปด ฐานสอง และรูปแบบการอ้างอิงอักขระแบบตัวเลขของ HTML รวม NUL, LF และ DEL
อ้างอิงตัวอักษร HTML
รายการที่สามารถค้นหาได้ขององค์ประกอบ HTML พร้อมรหัสชื่อและรหัสตัวเลข รวมถึงฟังก์ชันสำเนาด้วยคลิกเดียวสำหรับตัวอักษรพิเศษและสัญลักษณ์ต่างๆ
ตารางอ้างอิงแป้นพิมพ์ลัด
ค้นหาแป้นพิมพ์ลัดเริ่มต้นตามเอกสารของ VS Code, Chrome และ Bash ที่ใช้ GNU Readline บน macOS, Windows และ Linux
เครื่องสุ่มที่อยู่
สร้างระเบียนคล้ายที่อยู่ 1–20 รายการสำหรับแบบจำลองและการทดสอบ ด้วยรูปแบบประเทศแบบย่อ
ตัวตรวจสอบความถูกต้องของ JSON
ตรวจสอบไวยากรณ์ JSON และตรวจจับเครื่องหมายจุลภาคต่อท้าย เครื่องหมายอัญประกาศที่ผิด คีย์ซ้ำ และโครงสร้างที่ผิดรูปแบบ พร้อมระบุตำแหน่งข้อผิดพลาดอย่างแม่นยำ
ตัวลดรูปพีชคณิตบูลีน
ประเมินนิพจน์บูลีนสำหรับทุกชุดอินพุตและดูตารางค่าความจริงที่สมบูรณ์ รองรับตัวแปรสูงสุดห้าตัวและตัวดำเนินการ &, |, !, ^
เครื่องมือนี้มีให้บริการในภาษาอื่น
- URIコンポーネントエンコーダー [JA]
- مُرمِّز مكوّن URI [AR]
- Encodeur de composants URI [FR]
- Bộ mã hóa Thành phần URI [VI]
- URI-component-encoder [NL]
- URI-Komponenten-Encoder [DE]
- Codificador de Componentes URI [PT]
- URI 컴포넌트 인코더 [KO]
- Codificador de Componentes URI [ES]
- URI-komponentkodare [SV]
- Encoder Komponen URI [ID]
- Koder komponentu URI [PL]
- URI Bileşeni Kodlayıcı [TR]
- URI 组件编码器 [ZH]
- URI Component Encoder [EN]
- Codificatore di componenti URI [IT]
- Кодировщик компонента URI [RU]