對於URL編碼,我的意思是這個(http://www.w3schools.com/tags/ref_urlencode.asp),我的問題是URL編碼,我應該編碼param1=<xxx>¶m2=<yyy>
作爲一個整體,或編碼只是xxx
和yyy
部分?或者我應該分別編碼param1=<xxx>
和param2=<yyy>
?謝謝。URL編碼細節
http://hostname/func?param1=<xxx>¶m2=<yyy>
在此先感謝, 林
對於URL編碼,我的意思是這個(http://www.w3schools.com/tags/ref_urlencode.asp),我的問題是URL編碼,我應該編碼param1=<xxx>¶m2=<yyy>
作爲一個整體,或編碼只是xxx
和yyy
部分?或者我應該分別編碼param1=<xxx>
和param2=<yyy>
?謝謝。URL編碼細節
http://hostname/func?param1=<xxx>¶m2=<yyy>
在此先感謝, 林
如果編碼後的一切嗎?
如果編碼PARAMS只
這就是爲什麼我會建議只編碼值,以確保不會有任何與=作爲參數值分隔符和編碼值的混淆:
=在一個值將被編碼,所以=你會發現後?將僅用於分隔符
讓我們說你編碼後的一切? :
沒有問題:P1 = 「ABC」 P2 = 「123」
P1 = ABC & P2 = 123 =>編碼=> P1 = ABC & P2 = 123 =>解碼=> P1 = ABC & P2 = 123
問題:P1 = 「一個& b = C」 P2 = 「12」(不可能的,但假設它發生)
P1 =一個& b = C & P2 = 12 =>編碼= > P1 = a & b = c & P2b = 12b = 3a =>解碼=> P1 = a & b = c & P2 = 12(如果您嘗試訪問GET參數,服務器將看到3個參數:P1 = a,b = c,P2 ,= 12)
謝謝Julien,爲您的答覆投票。我不開發服務器端代碼,我只負責發送Http請求到現有的http服務器(例如谷歌,雅虎等),實際上我的問題是什麼是編碼的標準方式(以便標準服務器像谷歌和雅虎可以接受),你回答我的問題,似乎無論哪種方式將工作?另一個問題是,當你提到「1解碼獲得完整的字符串」,對於完整的字符串,你的意思是哪一部分? :) –
完整的字符串=以後的所有內容,包括參數名稱和值 –
我想說這兩種方式都應該工作,但它取決於服務器的行爲。 通常params shoudl格式化以便直接訪問它們:在PHP中獲取Get ['Name']將返回名稱參數的值 如果在?之後編碼所有內容,那麼它可能會破壞本機GET ['ParamName' ]或POST ['ParamName']功能 –