使用 Python 中的 GET 方法傳遞資訊


GET 方法將編碼後的使用者資訊附加到頁面請求中。頁面和編碼後的資訊由 ? 字元分隔,如下所示:

http://www.test.com/cgi-bin/hello.py?key1=value1&key2=value2

GET 方法是瀏覽器向 Web 伺服器傳遞資訊的預設方法,它會生成一個長字串,該字串顯示在瀏覽器的 Location: 框中。如果要向伺服器傳遞密碼或其他敏感資訊,切勿使用 GET 方法。

GET 方法有大小限制:請求字串中只能傳送 1024 個字元。GET 方法使用 QUERY_STRING 標頭髮送資訊,並且可以透過 QUERY_STRING 環境變數在 CGI 程式中訪問。

您可以透過簡單地連線鍵值對以及任何 URL 來傳遞資訊,也可以使用 HTML <FORM> 標籤使用 GET 方法傳遞資訊。

簡單的 URL 示例:GET 方法

這是一個簡單的 URL,它使用 GET 方法將兩個值傳遞給 hello_get.py 程式。

以下是 hello_get.py 指令碼,用於處理 Web 瀏覽器提供的輸入。我們將使用 cgi 模組,它使訪問傳遞的資訊變得非常容易:

示例

#!/usr/bin/python
# Import modules for CGI handling
import cgi, cgitb
# Create instance of FieldStorage
form = cgi.FieldStorage()
# Get data from fields
first_name = form.getvalue('first_name')
last_name = form.getvalue('last_name')
print "Content-type:text/html\r\n\r\n"
print "<html>"
print "<head>"
print "<title>Hello - Second CGI Program</title>"
print "</head>"
print "<body>"
print "<h2>Hello %s %s</h2>" % (first_name, last_name)
print "</body>"
print "</html>"

輸出

這將生成以下結果:

Hello ZARA ALI

簡單的表單示例:GET 方法

此示例使用 HTML 表單和提交按鈕傳遞兩個值。我們使用相同的 CGI 指令碼 hello_get.py 來處理此輸入。

<form action = "/cgi-bin/hello_get.py" method = "get">
First Name: <input type = "text" name = "first_name"> <br />
Last Name: <input type = "text" name = "last_name" />
<input type = "submit" value = "Submit" />
</form>

輸出

以下是上述表單的實際輸出,您輸入姓和名,然後單擊提交按鈕檢視結果。

更新於: 2020年1月31日

2K+ 瀏覽量

開啟你的 職業生涯

透過完成課程獲得認證

開始學習
廣告

© . All rights reserved.