Usimbaji na Usifuraji wa URL na Vyombo vya HTML
Zana hii inaruhusu kubadilisha maandishi kwa kusimba au kusifua kwa ajili ya matumizi katika URL, au kwa kukwepa na kurejesha vyombo vya HTML. Watengenezaji wa programu, wahariri wa maudhui, na wafanyakazi wa usaidizi wa kiufundi hutumia michakato hii ili kuingiza maandishi kwa usalama katika vijisehemu vya URL au maandishi ya HTML. Zana hii inafanya kazi moja kwa moja kwenye kivinjari chako; URL yako na maandishi ya HTML yanabadilishwa kwenye kivinjari chako na hakuna kinachopakiwa kwenye BroBroGo.
Mchakato wa usimbaji unasaidia kushughulikia herufi maalum ambazo vinginevyo zingeweza kuvuruga muundo wa anwani ya wavuti au msimbo wa HTML. Zana hii inatoa uwezo wa kuchagua kati ya kuchakata URL kamili au kipengele cha URL pekee, pamoja na kubadilisha maandishi ya mfano, kufuta ingizo lako, au kuhamisha matokeo yaliyopatikana kurudi kwenye uwanja wa ingizo.
Tofauti Kati ya Kipengele cha URL na URL Kamili
Wakati wa kushughulikia anwani za wavuti, kuna tofauti kubwa kati ya kusimba kipengele kimoja cha URL na kusimba URL nzima. Zana hii inatumia njia mbili tofauti za kiufundi kulingana na upeo uliochaguliwa:
- Kipengele: Njia hii inatumia kazi ya
encodeURIComponentaudecodeURIComponent. Inafaa kwa ajili ya kusimba thamani za maswali (query values), vipande vya njia (path pieces), au thamani za fomu. Inasimba herufi karibu zote maalum, ikiwa ni pamoja na:,/,?,&, na=, ili kuzuia herufi hizo zisivuruge muundo wa URL kuu. - URL Kamili: Njia hii inatumia kazi ya
encodeURIaudecodeURI. Inatumiwa wakati unapotaka kuweka herufi kama vile:,/,?,&, na=zikisomeka katika URL kamili, huku ikisimba herufi zingine zisizoruhusiwa.
Udhibiti wa upeo wa URL hufichwa kiotomatiki wakati hali ya vyombo vya HTML (Vyombo vya HTML mode) imechaguliwa.
Usimbaji wa Asilimia na Mahitaji ya UTF-8
Usimbaji wa URL, unaojulikana pia kama usimbaji wa asilimia (percent-encoding), unabadilisha herufi zisizo salama kuwa alama ya asilimia % ikifuatiwa na nambari mbili za mfumo wa hexadecimal. Wakati wa kusifua URL, usimbaji huu wa asilimia lazima uwe mifuatano kamili ya UTF-8.
Ikiwa mfuatano wa asilimia haujakamilika au umeharibika, mchakato wa kusifua hauwezi kukamilika. Kwa mfano, mfuatano uliovunjika kama vile %E0%A4%A hauwezi kusifurwa na utasababisha zana kuonyesha ujumbe wa makosa: "Maandishi haya ya URL yana usimbaji wa asilimia uliovunjika.".
Kukwepa na Kurejesha Vyombo vya HTML
Kukwepa vyombo vya HTML (HTML entity escaping) ni mchakato unaobadilisha herufi maalum kuwa fomu salama ili kuzuia kivinjari kuzitafsiri kama msimbo wa HTML. Mchakato huu unabadilisha herufi kama vile <, >, &, alama za nukuu, na maandishi yasiyo ya ASCII kuwa vyombo (entities) maalum.
Mchakato huu hufanya maandishi kuwa salama kwa ajili ya kubandikwa kwenye maandishi ya HTML au sifa za HTML (attributes). Kwa mfano, herufi < inabadilishwa kuwa < na > inabadilishwa kuwa >. Ni muhimu kuelewa kuwa usimbaji au ukwepaji huu wa herufi ni tofauti na usafishaji wa usalama (security sanitization). Wakati usimbaji unabadilisha herufi tu ili zionyeshwe kwa usahihi, usafishaji wa usalama unahusisha kuondoa kabisa msimbo hatari au usioruhusiwa.
Sheria za Matumizi na Mipaka ya Zana
Zana hii ina sheria maalum na ujumbe wa makosa ili kuhakikisha utendaji mzuri:
- Kikomo cha Ukubwa: Zana inaruhusu kiwango cha juu cha herufi 2,000,000 kwenye ingizo. Ikiwa ingizo ni kubwa sana, ujumbe "Ingizo hilo ni refu sana kwa zana hii. Liweke chini ya herufi
{max}." utaonekana. - Hakuna Ingizo: Ikiwa utajaribu kubadilisha bila kuweka maandishi, ujumbe "Bandika ingizo fulani kwanza." utatokea.
- Muda wa Kuchakata: Ikiwa ubadilishaji unachukua muda mrefu sana, mfumo utaonyesha ujumbe "Ubadilishaji huu unachukua muda mrefu sana. Jaribu ingizo dogo zaidi.".
- Hitilafu Nyingine: Ikiwa ubadilishaji utashindwa kwa sababu nyingine yoyote, ujumbe "Imeshindwa kubadilisha ingizo hili." utatokea.
Wakati wa kutumia vitendo vya ziada, zana inatoa taarifa fupi:
- Kusafisha uwanja kunaleta ujumbe "Ingizo na matokeo yamefutwa.".
- Kuhamisha matokeo kwenda kwenye ingizo kunaleta ujumbe "Matokeo yamehamishiwa kwenye ingizo.".
- Kupakia mfano kunaleta ujumbe "Mfano umepakiwa.".
Mifano ya Kubadilisha
Zana inajumuisha mifano halisi ya data ili kuonyesha jinsi ubadilishaji unavyofanya kazi:
| Aina ya Kitendo | Mfano wa Ingizo | Mfano wa Matokeo |
|---|---|---|
| URL Encode | hello world & city=上海 |
hello%20world%20%26%20city%3D%E4%B8%8A%E6%B5%B7 |
| URL Decode | hello%20world%20%26%20city%3D%E4%B8%8A%E6%B5%B7 |
hello world & city=上海 |
| HTML Escape | <button title="Save & close">保存</button> |
<button title="Save & close ">保存</button > |
| HTML Unescape | <button title="Save & close ">保存</button > |
<button title="Save & close">保存</button> |
Zana pia inaonyesha takwimu za ukubwa wa maandishi kupitia lebo za "Ingizo" na "Matokeo" pamoja na "Ukubwa" wa herufi husika.
Maswali Yanayoulizwa Mara kwa Mara
Je, ninapaswa kuchagua kipengele cha URL au URL kamili?
Tumia kipengele (component) kwa ajili ya thamani za maswali, vipande vya njia, au thamani za fomu. Tumia URL kamili wakati unataka kuweka herufi kama vile: /? & = zikisomeka.
Je, usimbaji wa vyombo vya HTML (HTML entity escaping) unabadilisha nini?
Inabadilisha herufi kama vile <, >, &, alama za nukuu na maandishi yasiyo ya ASCII kuwa vyombo (entities) vinavyoweza kubandikwa kwa usalama kwenye maandishi au sifa za HTML.
Kwa nini usifuraji wa URL wakati mwingine hushindwa?
Usimbaji wa asilimia (percent escapes) lazima uwe mifuatano kamili ya UTF-8. Mfuatano uliovunjika kama vile %E0%A4%A hauwezi kusifurwa bila kukisia.
Je, data yangu inatumwa kwenye seva wakati wa kubadilisha?
Hapana. URL yako na maandishi ya HTML yanabadilishwa kwenye kivinjari chako. Hakuna kinachopakiwa kwenye BroBroGo.