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

不言
Freigeben: 2018-10-19 17:16:05
nach vorne
2663 Leute haben es durchsucht
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()
Nach dem Login kopieren

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

Die Seite zeigt an:

ip地址为::1,host为localhost:8888
Nach dem Login kopieren

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!

Verwandte Etiketten:
Quelle:segmentfault.com
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage