python flask request的用法
时间: 2023-10-09 08:13:08 浏览: 88
python flask文件服务器
Python Flask是一个轻量级的Web框架,可以用于构建Web应用程序。其中,request是Flask中一个非常重要的对象,可以用于获取客户端发送的数据以及其他与请求相关的信息。
以下是一些常见的request用法:
1. 获取请求方法
可以使用request.method属性获取当前请求的方法,例如:
```python
from flask import Flask, request
app = Flask(__name__)
@app.route('/example', methods=['GET', 'POST'])
def example():
if request.method == 'POST':
# 处理POST请求
else:
# 处理GET请求
```
2. 获取请求参数
可以使用request.args属性获取GET请求中的查询参数,例如:
```python
from flask import Flask, request
app = Flask(__name__)
@app.route('/example')
def example():
name = request.args.get('name')
age = request.args.get('age')
return f'Hello, {name}. You are {age} years old.'
```
可以使用request.form属性获取POST请求中的表单数据,例如:
```python
from flask import Flask, request
app = Flask(__name__)
@app.route('/example', methods=['POST'])
def example():
name = request.form.get('name')
age = request.form.get('age')
return f'Hello, {name}. You are {age} years old.'
```
3. 获取请求头
可以使用request.headers属性获取请求头信息,例如:
```python
from flask import Flask, request
app = Flask(__name__)
@app.route('/example')
def example():
user_agent = request.headers.get('User-Agent')
return f'Your user agent is {user_agent}.'
```
4. 获取请求体
可以使用request.data属性获取请求体中的原始数据,例如:
```python
from flask import Flask, request
app = Flask(__name__)
@app.route('/example', methods=['POST'])
def example():
data = request.data
return f'Received data: {data}'
```
5. 获取请求路径
可以使用request.path属性获取当前请求的路径,例如:
```python
from flask import Flask, request
app = Flask(__name__)
@app.route('/example')
def example():
path = request.path
return f'Your request path is {path}.'
```
6. 获取请求的URL
可以使用request.url属性获取当前请求的完整URL,例如:
```python
from flask import Flask, request
app = Flask(__name__)
@app.route('/example')
def example():
url = request.url
return f'Your request URL is {url}.'
```
7. 获取请求的IP地址
可以使用request.remote_addr属性获取当前请求的IP地址,例如:
```python
from flask import Flask, request
app = Flask(__name__)
@app.route('/example')
def example():
ip = request.remote_addr
return f'Your IP address is {ip}.'
```
阅读全文