試驗(yàn)了一下python的urllib庫以及js 的 encodeURIComponent 均不會(huì)替換。空格encode也是替換成了 '%20' 。python提供了urllib.quote_plus, urlib.unquote_plus來處理空格->加號,看起來還是比較合理的。
查了一下 RFC 3986: 有下面一段
Scheme names consist of a sequence of characters beginning with a letter and followed by any combination of letters, digits, plus ("+"), period ("."), or hyphen ("-").
RFC 2396 有下面的一段
The plus "+", dollar "$", and comma "," characters have been added to those in the "reserved" set, since they are treated as reserved within the query component.
表示加號已經(jīng)是url的保留字了,不需要轉(zhuǎn)義。
然后html4文檔里才有關(guān)于加號的轉(zhuǎn)義:
application/x-www-form-urlencoded
Forms submitted with this content type must be encoded as follows:
Control names and values are escaped. Space characters are replaced by`+', and then reserved characters.....
聲明只有content-type為application/x-www-form-urlencoded時(shí)才會(huì)對+做轉(zhuǎn)義。
又翻了下php的文檔,發(fā)現(xiàn)有一個(gè)
rawurlencode() - URL-encode according to RFC 3986
也就是php又搞了rawurlencode和rawurldecode把標(biāo)準(zhǔn)實(shí)現(xiàn)了。。。。
不能反一下么,畢竟大部分人應(yīng)該都會(huì)用urlencode。php真是蛋疼啊。。。。
url decode problem 解決方法
2019-12-20 15:57PHP教程網(wǎng) PHP教程
今天被告訴了一個(gè)奇怪的事兒,第三方網(wǎng)站使用我們提供的簽名是出現(xiàn)了錯(cuò)誤,原因是使用php的urldecode時(shí)把加號(+) 替換成了空格
延伸 · 閱讀
- 2022-03-07URL @PathVariable 變量的匹配原理分析
- 2022-03-02詳解Python實(shí)現(xiàn)URL監(jiān)測與即時(shí)推送
- 2022-02-22一文帶你理解URI 和 URL 有什么區(qū)別?
- 2022-02-22java 遠(yuǎn)程文件url如何轉(zhuǎn)為輸入流
- 2022-02-22Python Django獲取URL中的數(shù)據(jù)詳解
- 2022-02-18URL如何優(yōu)化?網(wǎng)站url鏈接如何做有利于網(wǎng)站優(yōu)化
- PHP教程
php全角字符轉(zhuǎn)換為半角函數(shù)
這篇文章主要介紹了PHP全角半角轉(zhuǎn)換函數(shù),把目前能找到的所有全角都列出來了一個(gè)個(gè)替換吧,需要的朋友可以參考下 ...
- PHP教程
php htmlentities()函數(shù)的定義和用法
下面小編就為大家?guī)硪黄猵hp htmlentities()函數(shù)的定義和用法。小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧...
- PHP教程
PHP變量的定義、可變變量、變量引用、銷毀方法
這篇文章主要介紹了PHP變量的定義、可變變量、變量引用、銷毀方法,需要的朋友可以參考下 ...
- PHP教程
php學(xué)習(xí)之?dāng)?shù)據(jù)類型之間的轉(zhuǎn)換介紹
php學(xué)習(xí)之?dāng)?shù)據(jù)類型之間的轉(zhuǎn)換介紹,學(xué)習(xí)php的朋友可以參考下。 ...
- PHP教程
PHP常量DIRECTORY_SEPARATOR原理及用法解析
這篇文章主要介紹了PHP常量DIRECTORY_SEPARATOR原理及用法解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友...
- PHP教程
php學(xué)習(xí)筆記 數(shù)組的常用函數(shù)
只要一個(gè)變量,需要在多個(gè)方法使用,就將這個(gè)變量聲明為成員屬性,可以直接在這個(gè)對象中的所有方法中使用 成員屬性,相當(dāng)于這個(gè)對象中的全局變量...
- PHP教程
php實(shí)現(xiàn)的支持imagemagick及gd庫兩種處理的縮略圖生成類
這篇文章主要介紹了php實(shí)現(xiàn)的支持imagemagick及gd庫兩種處理的縮略圖生成類,包含了用法的詳細(xì)描述,非常實(shí)用,需要的朋友可以參考下...
- PHP教程
PHP中讀取文件的8種方法和代碼實(shí)例
這篇文章主要介紹了PHP中讀取文件的8種方法和代碼實(shí)例,本文總結(jié)了PHP中讀取文件的8個(gè)函數(shù),每一個(gè)都附有使用例子及注意事項(xiàng)等,需要的朋友可以參考下...