Heim >Backend-Entwicklung >Python-Tutorial >RequestHandler für die Entwicklung der Tornado-Website in Python: Eingabeerfassung

RequestHandler für die Entwicklung der Tornado-Website in Python: Eingabeerfassung

不言
不言nach vorne
2018-10-19 17:16:052658Durchsuche
Der Inhalt dieses Artikels handelt von der in Python entwickelten Website RequestHandler: Eingabeerfassung. Ich hoffe, dass er für Sie hilfreich ist.

Eingabeerfassung bezieht sich auf die Toolfunktionen und -eigenschaften, die in RequestHandler verwendet werden, um Clienteingaben zu erhalten. Zum Beispiel das Abrufen von URL-Parametern, Beitragsübermittlungsparametern usw.

1. get_argument(name), get_arguments(name)

RequestHandler.get_argument(name) und RequestHandler.get_arguments(name) geben beide den Wert des angegebenen Parameters zurück. get_argument ruft einen einzelnen Wert ab, während get_arguments verwendet wird, wenn der Parameter mehrere Werte enthält, und eine Liste mit mehreren Werten zurückgibt.
Hinweis: Verwenden Sie diese beiden Methoden, um eine Sammlung von in der URL abgefragten Parametern und von POST übermittelten Parametern zu erhalten.

2. get_query_argument(name), get_query_arguments(name)

Der einzige Unterschied besteht darin, dass diese beiden Methoden nur Parameter aus der URL abfragen.

3. get_body_argument(name), get_body_arguments(name)

Die Funktionen ähneln immer noch den oben genannten vier Methoden. Der einzige Unterschied besteht darin, dass diese beiden Methoden nur die von POST übermittelten Parameter abfragen .

Tipp: In der tatsächlichen Entwicklung werden im Allgemeinen die beiden Methoden get_argument und get_arguments verwendet, da sie die Abfrageergebnisse anderer Methoden enthalten.

4. get_cookie(name,default=None)

Den Cookie-Wert entsprechend dem Cookie-Namen abrufen

5. RequestHandler.request

Tornado zurückgeben .httputil Attribute der .HTTPServerRequest-Objektinstanz können über dieses Objekt abgerufen werden, wie zum Beispiel:

from tornado.web import Application, RequestHandler
import tornado.ioloop


class DetailHandler(RequestHandler):
    def get(self):
        ip = self.request.remote_ip  # 获取客户端的IP地址
        host = self.request.host  # 获取请求的主机地址
        result="ip地址为%s,host为%s"%(ip,host)
        return self.write(result)


if __name__ == '__main__':
    app = Application([
        ("/request", DetailHandler)
    ])
    app.listen(8888)
    tornado.ioloop.IOLoop.current().start()

Browser-Eingabe: http://localhost:8888/request

Die Seite zeigt an:

ip地址为::1,host为localhost:8888

Die häufig verwendeten httputil.HTTPServerRequest-Objekteigenschaften lauten wie folgt:

属性名 说明
method HTTP请求方法,例如:GET、POST
uri 客户端请求的uri的完整内容。
path uri路径名,即不包含查询字符串
query uri中的查询字符串
version 客户端发送请求时使用的HTTP版本,例如:HTTP/1.1
headers 以字典方式的形式返回HTTP Headers
body 以字符串的形式返回HTTP消息体
remote_ip 客户端的IP地址
protocol 请求协议,例如:HTTP、HTTPS
host 请求消息的主机名
arguments 客户端提交的所有参数。
files 以字典形式返回客户端上传的文件,每个文件名对应一个HTTPFile
cookies 客户端提交的Cookies字典

Das obige ist der detaillierte Inhalt vonRequestHandler für die Entwicklung der Tornado-Website in Python: Eingabeerfassung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:segmentfault.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen

In Verbindung stehende Artikel

Mehr sehen