2

我想以这样一种方式使用 Flask,我可以简单地传递 use localhost/data/?user=[123,234,345] ,它会在正文中返回这些值。

这是我尝试过的:

import redis 
r = redis.StrictRedis(host='localhost', port=6379, db=0)
@app.route('/data', methods=['GET','POST']) 
def data():
    user = request.args.getList('user', type=int)
    users = []

    for u in user:
        try:
            users.append(redisfunction(u)) 
        except:
            continue

    return users

我究竟做错了什么?

4

1 回答 1

4
  1. request.args.getList应该是request.args.getlist,l的小写,否则会导致错误码500,我现在找不到原因
  2. 你应该访问localhost/data?user=123&user=234&user=345

这是我的简单代码:

from flask import Flask, request

app = Flask(__name__)

@app.route('/data', methods=['GET', 'POST'])
def data():
    user = request.args.getlist('user', type=int)
    print user
    return 'done'

app.run()

然后curl 'localhost:5000/data?user=123&user=234&user=345'

烧瓶输出

[123、234、345]

127.0.0.1 - - [14/Dec/2016 09:23:48] “GET /data?user=123&user=234&user=345 HTTP/

于 2016-12-14T01:25:47.213 回答