获取请求数据
Sanic路由处理函数的第一个参数都是一个sanic.request.Request
类的实例,其中保存了一次HTTP请求中所携带的全部信息。对于请求中所携带的信息,一般是通过Request
类提供的属性和一些方法来获取的。其中常用的属性主要有以下这些。
.json
,对象类型,请求中用JSON格式提交的表单数据。.args
,字典类型,请求中携带的Query参数。.query_args
,列表类型,使用(key, value)
形式的元组保存Query参数。.raw_args
,字典类型,所有Query参数,对于Query参数中同名参数只保留第一个值。.form
,字典类型,保存着使用Form Data格式提交的保单数据。.files
,字典类型,保存的值为文件对象,文件对象中有以下字段可供访问请求中上传的文件。.name
,上传的文件名。.type
,上传文件的文件类型。.body
,上传文件的文件体。
.body
,字节数组,请求中提交的原始请求体数据。.headers
,字典类型,请求头内容,其中请求头名称区分大小写。.methods
,字符串类型,HTTP请求方法。.ip
,字符串类型,请求者的IP地址。.port
,字符串类型,请求者发送请求时的端口。.socket
,元组类型,其中包含请求者的IP和端口。.app
,响应请求的Sanic实例。.url
,请求的具体URL。.scheme
,请求使用的协议,如http
、https
、ws
或wss
。.host
,请求的主机名称。.server_name
,请求的主机名称,不包含端口号。.server_port
,请求的主机端口号。.path
,请求URL的路径。.query_string
,请求的URL中包含的原始Query参数字符串。.uri_template
,匹配到请求URL的路由路径。.token
,请求头中的Authentication
值。