Alat Dalam Talian untuk Menyandikan Rentetan URL

Alat dalam talian untuk mengelakkan watak khas dalam rentetan URL. Masukkan URL, dan alat ini akan menyandikan dengan mengelakkan watak khas, memastikan ia selamat digunakan dalam aplikasi web.

Penyandi Rentetan URL

📚

Dokumentasi

Alat Penyelamat Tali URL

Pengenalan

Dalam bidang pembangunan web dan komunikasi Internet, URL (Penunjuk Sumber Uniform) memainkan peranan penting dalam mengenal pasti sumber di web. Walau bagaimanapun, URL mempunyai sekatan terhadap watak yang boleh mereka mengandungi. Watak tertentu mempunyai makna khas, sementara yang lain tidak selamat untuk digunakan dalam URL kerana kemungkinan salah tafsir atau kerosakan semasa penghantaran.

Penyandian URL, juga dikenali sebagai penyandian peratus, adalah mekanisme untuk menukar watak khas ke dalam format yang boleh dihantar melalui Internet. Alat ini membolehkan anda memasukkan rentetan URL dan menyelamatkan watak khas, memastikan bahawa URL adalah sah dan boleh ditafsirkan dengan betul oleh pelayar web dan pelayan.

Memahami Penyandian URL

Apa itu Penyandian URL?

Penyandian URL melibatkan penggantian watak ASCII yang tidak selamat dengan % diikuti oleh dua digit heksadesimal yang mewakili kod ASCII watak tersebut. Ia memastikan bahawa maklumat dihantar melalui Internet tanpa pengubahsuaian.

Sebagai contoh, watak ruang ' ' digantikan dengan %20.

Mengapa Penyandian URL Diperlukan?

URL hanya boleh dihantar melalui Internet menggunakan set watak ASCII. Oleh kerana URL sering mengandungi watak di luar set ini, mereka mesti ditukar ke dalam format ASCII yang sah. Penyandian URL menjamin bahawa watak khas tidak menyebabkan kesan yang tidak diingini atau ralat dalam permintaan web.

Watak yang Perlu Disandikan

Menurut spesifikasi RFC 3986, watak-watak berikut adalah terpelihara dalam URL dan mesti disandi peratus jika mereka hendak digunakan secara literal:

  • Pemisah umum: :, /, ?, #, [, ], @
  • Pemisah sub: !, $, &, ', (, ), *, +, ,, ;, =

Selain itu, sebarang watak bukan ASCII, termasuk watak dalam Unicode, mesti disandi.

Bagaimana Penyandian URL Berfungsi?

Proses Penyandian

  1. Kenal pasti Watak Khas: Analisis rentetan URL dan kenal pasti watak yang bukan watak ASCII yang tidak terpelihara (huruf, angka, -, ., _, ~).

  2. Tukar kepada Kod ASCII: Untuk setiap watak khas, peroleh titik kod ASCII atau Unicode.

  3. Tukar kepada Urutan Byte UTF-8 (jika perlu): Untuk watak bukan ASCII, sandikan watak tersebut menjadi satu atau lebih bait menggunakan penyandian UTF-8.

  4. Tukar kepada Heksadesimal: Tukar setiap bait kepada nilai heksadesimal dua digitnya.

  5. Tambahkan Simbol Peratus: Tambah setiap bait heksadesimal dengan tanda %.

Contoh Penyandian

  • Watak: ' ' (Ruang)

    • Kod ASCII: 32
    • Heksadesimal: 20
    • Disandi URL: %20
  • Watak: 'é'

    • Penyandian UTF-8: 0xC3 0xA9
    • Disandi URL: %C3%A9

Kes Khas yang Perlu Dipertimbangkan

  • Watak Unicode: Watak bukan ASCII mesti disandi dalam UTF-8 dan kemudian disandi peratus.

  • Tanda Peratus yang Sudah Disandi: Tanda peratus yang merupakan sebahagian daripada penyandian peratus tidak boleh disandi semula.

  • Watak Terpelihara dalam Rentetan Pertanyaan: Watak tertentu mempunyai makna khas dalam rentetan pertanyaan dan harus disandi untuk mengelakkan mengubah struktur.

Penyahsandian URL

Apa itu Penyahsandian URL?

Penyahsandian URL adalah proses terbalik dari penyandian URL. Ia menukar watak yang disandi peratus kembali ke bentuk asalnya, menjadikan URL boleh dibaca dan ditafsirkan oleh manusia dan sistem.

Proses Penyahsandian

  1. Kenal pasti Urutan Penyandian Peratus: Cari semua simbol % yang diikuti oleh dua digit heksadesimal dalam rentetan URL.

  2. Tukar Heksadesimal kepada Byte: Terjemahkan setiap nilai heksadesimal kepada bait yang sepadan.

  3. Tukar Byte UTF-8 (jika perlu): Untuk urutan berbilang bait, gabungkan bait tersebut dan nyahsandikan menggunakan penyandian UTF-8 untuk mendapatkan watak asal.

  4. Gantikan Urutan yang Disandi: Gantikan urutan yang disandi peratus dengan watak yang disahsandikan.

Contoh Penyahsandian

  • Disandi: hello%20world

    • %20 diterjemahkan kepada ruang ' '
    • Disahsandikan: hello world
  • Disandi: J%C3%BCrgen

    • %C3%A4 diterjemahkan kepada 'ü' dalam UTF-8
    • Disahsandikan: Jürgen

Kepentingan Penyahsandian URL

Penyahsandian URL adalah penting semasa memproses input pengguna dari URL, membaca parameter pertanyaan, atau mentafsir data yang diterima dari permintaan web. Ia memastikan bahawa maklumat yang diekstrak dari URL berada dalam bentuk yang betul dan dimaksudkan.

Kes Penggunaan

Pembangunan Web

  • Parameter Pertanyaan: Menyandikan input pengguna dalam parameter pertanyaan untuk mengelakkan ralat atau kerentanan keselamatan.

  • Parameter Jalur: Menyertakan data dinamik dalam jalur URL dengan selamat.

Penghantaran Data

  • API dan Perkhidmatan Web: Memastikan data yang dihantar ke API diformat dengan betul.

  • Internasionalisasi: Menyokong URL dengan watak dari pelbagai bahasa.

Keselamatan

  • Mencegah Serangan Suntikan: Menyandikan input untuk mengurangkan risiko skrip silang (XSS) dan serangan suntikan lain.

Alternatif

Walaupun penyandian URL adalah penting, terdapat senario di mana kaedah penyandian lain mungkin lebih sesuai:

  • Penyandian Base64: Digunakan untuk menyandikan data binari dalam URL atau apabila kepadatan maklumat yang lebih tinggi diperlukan.

  • Penyandian UTF-8 tanpa Penyandian Peratus: Sesetengah sistem menggunakan penyandian UTF-8 secara langsung, tetapi ini boleh menyebabkan isu jika tidak ditangani dengan betul.

Pertimbangkan spesifik aplikasi anda untuk memilih kaedah penyandian yang paling sesuai.

Sejarah

Penyandian URL diperkenalkan dengan spesifikasi awal URL dan standard URI (Pengenal Sumber Uniform) pada tahun 1990-an. Keperluan untuk cara yang konsisten untuk menyandikan watak khas timbul daripada sistem dan set watak yang pelbagai yang digunakan di seluruh dunia.

Peristiwa penting termasuk:

  • RFC 1738 (1994): Mendefinisikan URL dan memperkenalkan penyandian peratus.

  • RFC 3986 (2005): Mengemas kini sintaks URI, memperhalusi peraturan untuk penyandian.

Seiring berjalannya waktu, penyandian URL telah menjadi integral kepada teknologi web, memastikan komunikasi yang boleh dipercayai di antara pelbagai sistem dan platform.

Contoh Kod

Berikut adalah contoh cara melakukan penyandian URL dalam pelbagai bahasa pengaturcaraan:

1' Contoh Excel VBA
2Function URLEncode(ByVal Text As String) As String
3    Dim i As Integer
4    Dim CharCode As Integer
5    Dim Char As String
6    Dim EncodedText As String
7
8    For i = 1 To Len(Text)
9        Char = Mid(Text, i, 1)
10        CharCode = AscW(Char)
11        Select Case CharCode
12            Case 48 To 57, 65 To 90, 97 To 122, 45, 46, 95, 126 ' 0-9, A-Z, a-z, -, ., _, ~
13                EncodedText = EncodedText & Char
14            Case Else
15                If CharCode < 0 Then
16                    ' Tangani watak Unicode
17                    EncodedText = EncodedText & "%" & Hex(65536 + CharCode)
18                Else
19                    EncodedText = EncodedText & "%" & Right("0" & Hex(CharCode), 2)
20                End If
21        End Select
22    Next i
23    URLEncode = EncodedText
24End Function
25
26' Penggunaan:
27' =URLEncode("https://example.com/?name=Jürgen")
28

Nota: Output mungkin berbeza sedikit berdasarkan cara setiap bahasa menangani watak terpelihara dan ruang (contohnya, menyandikan ruang sebagai %20 atau +).

Diagram SVG Proses Penyandian URL

Proses Penyandian URL URL Asal Kenal pasti Khas Watak Sandikan URL Contoh: Input: https://example.com/über uns Output: https://example.com/%C3%BCber%20uns

Pertimbangan Keselamatan

Penyandian dan penyahsandian URL yang betul adalah kritikal untuk keselamatan:

  • Mencegah Serangan Suntikan: Menyandikan input pengguna membantu mencegah kod berniat jahat daripada dilaksanakan, mengurangkan risiko seperti skrip silang (XSS) dan suntikan SQL.

  • Integriti Data: Memastikan bahawa data dihantar tanpa pengubahsuaian atau kerosakan.

  • Pematuhan dengan Standard: Mematuhi standard penyandian mengelakkan isu keserasian antara sistem.

Rujukan

  1. RFC 3986 - Pengenal Sumber Uniform (URI): https://tools.ietf.org/html/rfc3986
  2. Apa itu Penyandian URL dan Bagaimana ia berfungsi? https://www.urlencoder.io/learn/
  3. Penyandian Peratus: https://en.wikipedia.org/wiki/Percent-encoding
  4. Standard URL: https://url.spec.whatwg.org/
  5. URI.escape adalah usang: https://stackoverflow.com/questions/2824126/why-is-uri-escape-deprecated

Kesimpulan

Penyandian URL adalah aspek penting dalam pembangunan web dan komunikasi Internet. Dengan menukar watak khas ke dalam format yang selamat, ia memastikan bahawa URL ditafsirkan dengan betul oleh pelayar dan pelayan, mengekalkan integriti dan keselamatan penghantaran data. Alat ini menyediakan cara yang mudah untuk menyelamatkan watak khas dalam URL anda, meningkatkan keserasian dan mencegah potensi ralat atau kerentanan keselamatan.