URL එකක් කේතනය කිරීම සඳහා, කලින් පවසා ඇති පරිදි, ඔබට කාර්යයන් දෙකක් ඇත:
encodeURI()
සහ
encodeURIComponent()
දෙකම පැවතීමට හේතුව, පළමුවැන්න බොහෝ දේ නිරුපද්රිතව තබා ගැනීමේ අවදානම සමඟ URL ය ආරක්ෂා කරන අතර දෙවැන්න අවශ්ය සියල්ල සංකේතවත් කරයි.
පළමුවැන්න සමඟ, ඔබට අලුතින් පැන ගිය URL ලිපින තීරුවට පිටපත් කළ හැකිය (නිදසුනක් ලෙස) එය ක්රියාත්මක වනු ඇත. කෙසේ වෙතත්, ඔබගේ නිරුපද්රිතව ක්ෂේත්ර පරිසීමකයන්ට බාධා ඇති කරයි, '=' ක්ෂේත්ර නාම සහ අගයන්ට බාධා ඇති කරයි, සහ '+' අවකාශය මෙන් පෙනේ. නමුත් සරල දත්ත සඳහා, ඔබ පැන යන දෙයෙහි URL ස්වභාවය ආරක්ෂා කර ගැනීමට අවශ්ය විට, මෙය ක්රියාත්මක වේ.
දෙවැන්න නම්, ඔබේ නූලෙහි කිසිවක් URL එකකට බාධා නොවන බවට වග බලා ගැනීම සඳහා ඔබ කළ යුතු සියල්ල ය. එමඟින් විවිධාකාර වැදගත් නොවන අක්ෂර නිරුපද්රිතව ඉතිරි වන අතර එමඟින් URL ය හැකි තරම් මිනිස් කියවිය හැකි පරිදි බාධාවකින් තොරව පවතී. මේ ආකාරයෙන් සංකේතවත් කරන ලද URL යක් නිරුපණය නොකර URL ලෙස තවදුරටත් ක්රියා නොකරනු ඇත.
එබැවින් ඔබට කාලය ගත හැකි නම්, ඔබට සැමවිටම අවශ්ය වන්නේ encodeURIComponent () - නම / අගය යුගල එකතු කිරීමට පෙර විමසුම් නූලට එක් කිරීමට පෙර මෙම ශ්රිතය භාවිතා කරමින් නම සහ අගය යන දෙකම සංකේතවත් කරන්න.
එන්කෝඩියුරි () භාවිතා කිරීමට හේතු ඉදිරිපත් කිරීමට මට දුෂ්කර කාලයක් තිබේ - මම එය වඩා දක්ෂ පුද්ගලයින්ට තබමි.