Flask - phương thức HTTP

Giao thức Http là nền tảng của giao tiếp dữ liệu trong world wide web. Các phương pháp truy xuất dữ liệu khác nhau từ URL đã chỉ định được xác định trong giao thức này.

Bảng sau đây tóm tắt các phương thức http khác nhau:

Sr.No. Phương pháp & Mô tả
1

GET

Gửi dữ liệu ở dạng không được mã hóa đến máy chủ. Phương pháp phổ biến nhất.

2

HEAD

Giống như GET, nhưng không có nội dung phản hồi

3

POST

Được sử dụng để gửi dữ liệu biểu mẫu HTML đến máy chủ. Dữ liệu nhận được bằng phương thức POST không được máy chủ lưu vào bộ nhớ đệm.

4

PUT

Thay thế tất cả các bản trình bày hiện tại của tài nguyên đích bằng nội dung đã tải lên.

5

DELETE

Loại bỏ tất cả các đại diện hiện tại của tài nguyên mục tiêu được cung cấp bởi một URL

Theo mặc định, tuyến Flask phản hồi với GETcác yêu cầu. Tuy nhiên, tùy chọn này có thể được thay đổi bằng cách cung cấp đối số phương thức đểroute() người trang trí.

Để chứng minh việc sử dụng POST trong định tuyến URL, trước tiên hãy để chúng tôi tạo một biểu mẫu HTML và sử dụng POST để gửi dữ liệu biểu mẫu đến một URL.

Lưu tập lệnh sau dưới dạng login.html

<html>
   <body>
      <form action = "http://localhost:5000/login" method = "post">
         <p>Enter Name:</p>
         <p><input type = "text" name = "nm" /></p>
         <p><input type = "submit" value = "submit" /></p>
      </form>
   </body>
</html>

Bây giờ hãy nhập tập lệnh sau vào trình bao Python.

from flask import Flask, redirect, url_for, request
app = Flask(__name__)

@app.route('/success/<name>')
def success(name):
   return 'welcome %s' % name

@app.route('/login',methods = ['POST', 'GET'])
def login():
   if request.method == 'POST':
      user = request.form['nm']
      return redirect(url_for('success',name = user))
   else:
      user = request.args.get('nm')
      return redirect(url_for('success',name = user))

if __name__ == '__main__':
   app.run(debug = True)

Sau khi máy chủ phát triển bắt đầu chạy, hãy mở login.html trong trình duyệt, nhập tên vào trường văn bản và nhấp vào Submit.

Dữ liệu biểu mẫu được ĐĂNG lên mệnh đề URL trong hành động của thẻ biểu mẫu.

http://localhost/login được ánh xạ tới login()chức năng. Vì máy chủ đã nhận dữ liệu bởiPOST phương pháp, giá trị của tham số 'nm' thu được từ dữ liệu biểu mẫu được thu bằng:

user = request.form['nm']

Nó được chuyển cho ‘/success’URL như một phần biến. Trình duyệt hiển thịwelcome tin nhắn trong cửa sổ.

Thay đổi tham số phương thức thành ‘GET’ trong login.htmlvà mở lại trong trình duyệt. Dữ liệu nhận được trên máy chủ là bởiGETphương pháp. Giá trị của tham số 'nm' bây giờ được nhận bằng:

User = request.args.get(‘nm’)

Đây, argslà đối tượng từ điển chứa danh sách các cặp tham số hình thức và giá trị tương ứng của nó. Giá trị tương ứng với tham số 'nm' được chuyển cho URL '/ success' như trước.