flask客户端传多个参数到服务端,客户端怎么写,服务端怎么写?
时间: 2024-03-28 22:36:45 浏览: 220
在 Flask 中,客户端可以使用 GET 或 POST 方法向服务端传递多个参数。其中,GET 方法将参数附加在 URL 后面,POST 方法则将参数放在请求体中。
客户端可以使用 Python 的 requests 库来发送 HTTP 请求。以下是使用 GET 方法传递两个参数 name 和 age 的示例:
```python
import requests
url = 'http://example.com/api'
params = {'name': 'John', 'age': 30}
response = requests.get(url, params=params)
print(response.text)
```
在服务端中,可以使用 request.args.get() 方法获取这些参数的值:
```python
from flask import Flask, request
app = Flask(__name__)
@app.route('/api', methods=['GET'])
def api():
name = request.args.get('name')
age = request.args.get('age')
# do something with name and age
return 'Hello, {}! You are {} years old.'.format(name, age)
if __name__ == '__main__':
app.run()
```
如果要使用 POST 方法传递多个参数,可以在客户端使用表单或 JSON 格式发送请求。以下是使用表单方式发送 POST 请求的示例:
```python
import requests
url = 'http://example.com/api'
data = {'name': 'John', 'age': 30}
response = requests.post(url, data=data)
print(response.text)
```
在服务端中,可以使用 request.form.get() 方法获取这些参数的值:
```python
from flask import Flask, request
app = Flask(__name__)
@app.route('/api', methods=['POST'])
def api():
name = request.form.get('name')
age = request.form.get('age')
# do something with name and age
return 'Hello, {}! You are {} years old.'.format(name, age)
if __name__ == '__main__':
app.run()
```
以上代码中的 request.form.get() 方法用于获取表单数据。如果客户端发送的是 JSON 格式的数据,则可以使用 request.json.get() 方法来获取参数的值。
阅读全文