In der Anforderungsbibliothek verfügt die Anforderungsmethode „Anforderungen“ über einen Anforderungstext beim Senden von Post/Put/Delete usw. Bei der Anfrage gibt es zwei optionale Parameter: json und data. |
Wie wir alle wissen, gibt es vier Hauptformate für den Anforderungstext von http-Anfragen: |
application/json |
applicaiton/x-www-from-urlencoded |
mehrteilig/Form |
application/xml |
Welche Parameter werden also für die oben genannten Anforderungsformate verwendet? |
Als nächstes werden Beispiele nacheinander aufgeführt. |
Vorwort
Der erste Typ: application/json
Schritt 1: Suchen Sie eine von application/json angeforderte Schnittstelle
Schritt 2: Initiieren Sie eine HTTP-Anfrage im JSON-Format – verwenden Sie JSON-Parameter und den Wörterbuchtyp
Der zweite Typ: applicaiton/x-www-from-urlencoded
Schritt 1: Suchen Sie eine von application/x-www-from-urlencoded angeforderte Schnittstelle
Schritt 2: Initiieren Sie eine http-Anfrage im x-www-from-urlencoded-Format – verwenden Sie den Datenparameter
Der spezifische Code lautet wie folgt:
Der dritte Typ: Multipart/Form
Schritt 1: Suchen Sie eine Upload-Schnittstelle für mehrteilige/Formularanfragen
Schritt 2: Initiieren Sie eine HTTP-Anfrage im Multipart-/Formularformat – verwenden Sie Daten- und Dateiparameter
Komplette Schnittstelle zum Hochladen von Anfragen
Der vierte Typ: application/xml
Schritt 1: Entwerfen Sie eine Schnittstelle im XML-Format
Verwenden Sie nun flask, um eine einfache Anmeldeschnittstelle im XML-Format zu entwerfen. Die Anforderungsparameter sind Benutzername und Passwort.
Der Code lautet wie folgt (zur lokalen Ausführung installieren Sie bitte zuerst die Flask-Bibliothek. Fügen Sie den folgenden Code in app.py ein):
from flask import Flask, request, Response
app = Flask(__name__)@app.route('/login', methods=['POST'])
def login():
# 获取请求体中的XML数据
xml_data = request.data
# 解析XML数据,提取用户名和密码
try:
import xml.etree.ElementTree as ET
root = ET.fromstring(xml_data)
username = root.find('username').text
password = root.find('password').text
except Exception:
# 解析失败,返回错误响应
response_xml = '0请求格式错误'
return Response(response_xml, mimetype='text/xml')
# 验证用户名和密码
if username == 'python' and password == '1234567890':
# 登录成功,返回成功响应 response_xml = '1成功1001'
else:
# 登录失败,返回失败响应
response_xml = '-1用户名或密码错误'
return Response(response_xml, mimetype='text/xml')if __name__ == '__main__':
app.run()
Das angeforderte Daten-XML-Format lautet wie folgt:
<login>
<username>python</username>
<password>1234567890</password>
</login>
Das XML-Format der Antwortdaten lautet wie folgt:
<response>
<code>1</code>
<message>成功</message>
<userid>1001</userid>
</response>
Verwenden Sie in lokalem Pycharm python app.py, um diesen Dienst auszuführen.
Schritt 2: Initiieren Sie eine HTTP-Anfrage im XML-Format – verwenden Sie den Datenparameter
Daten sind vom Typ String und liegen im XML-Format vor.