查詢字符串
查詢字符串(URL參數)是指在URL的末尾加上用於向服務器發送信息的字符串(變量)。將“?”放在URL的末尾,然後再加上“參數=值”,想加上多個參數的話,使用“&”。以這個形式,可以將想要發送給服務器的數據添加到URL中。
例如,假設基本URL爲“https://○△×□.cn /”,則在基本URL中添加查詢字符串(URL參數)爲“https://○△×□.cn /“?●=▲×■&○=△×□”。
以上URL中“?●=▲×■&○=△×□”的部分是查詢字符串(URL參數)。
購物網站和博客網站等吸引用戶的方法有各種各樣。其中,“查詢字符串(URL參數)”作爲了解用戶從哪裏來的有效方法被廣爲流傳。因爲設定URL參數,可以更明確地分析用戶訪問來源,對Web網站的推廣非常有用。也就是在前端中用的比較多。
- 安裝uPyCraft IDE
代碼
建立函數
def qs_parse(qs):
## Function code
建立空字典
映射查詢字符串的“參數 = 值”結構
parameters = {}
隔離
隔離每個參數值對使用字符串split方法,將用作分隔符的字符串作爲輸入參數,並返回由分隔符分割的子字符串列表。分隔符不包含在結果中。
需要使用包含查詢參數的字符串變量。在這個示例中,該字符串是qs_parse函數的輸入參數,我們稱之爲qs。
ampersandSplit = qs.split("&")
迭代處理
列表元素進行逐個迭代處理
for element in ampersandSplit:
#iteration code
使用“=”字符作爲分隔符進一步分割字符串。
equalSplit = element.split("=")
輸出結果將始終是一個具有兩個位置的列表。
第一個位置是參數的名稱(它是分隔符字符左側的子字符串),
第二個位置是其值(它是分隔符字符右側的子字符串)。
需將結果列表的第一個元素映射到字典的鍵(key),將第二個元素映射到字典的值(value)。
parameters[equalSplit[0]] = equalSplit[1]
在代碼的最後,我們將返回字典,它存儲在parameters變量中。
def qs_parse(qs):
parameters = {}
ampersandSplit = qs.split("&")
for element in ampersandSplit:
equalSplit = element.split("=")
parameters[equalSplit[0]] = equalSplit[1]
return parameters
測試代碼
若要測試代碼,只需將其上傳到ESP32上即可。
將調用文件qs_parse,因此需要將其作爲模塊導入,以便能夠使用已開發的函數。
import qs_parse
stringToParse = "param1=val1¶m2=val2¶m3=val3"
parameters = qs_parse.qs_parse(stringToParse)
print(parameters)
借用此結果圖
可以看出,輸出的字典由與URL參數匹配的Key(鍵)和Value(值)組成。