Computer >> Máy Tính >  >> Lập trình >> Python

Truyền thông tin bằng phương thức POST trong Python

Một phương pháp truyền thông tin đến chương trình CGI thường đáng tin cậy hơn là phương pháp POST. Điều này đóng gói thông tin theo cách chính xác như các phương thức GET, nhưng thay vì gửi nó dưới dạng một chuỗi văn bản sau dấu? trong URL, nó sẽ gửi nó dưới dạng một tin nhắn riêng biệt. Thông báo này đi vào tập lệnh CGI ở dạng đầu vào chuẩn.

Ví dụ

Dưới đây là cùng một tập lệnh hello_get.py xử lý GET cũng như phương thức POST.

#!/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>"

Đầu ra

Chúng ta hãy lấy lại ví dụ tương tự như trên, chuyển hai giá trị bằng HTML FORM và nút gửi. Chúng tôi sử dụng cùng một tập lệnh CGI hello_get.py để xử lý đầu vào này.

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

Đây là kết quả thực tế của biểu mẫu trên. Bạn điền Họ và Tên rồi bấm nút gửi để xem kết quả.

Truyền thông tin bằng phương thức POST trong Python