首页 > 解决方案 > 如何使用从flask api的get请求中收到的内容作为flask中的参数调用函数

问题描述

我已经构建了一个 api,它接受在 url 中传递给它的任何文件路径并将其显示在网页中。示例: http://12.389.798.220:5000/C: /MYES/ALL.pdf

网页会显示

C:/MYES/ALL.pdf

现在我想获取这个输出并将其传递给我的代码中的函数“convert”,该函数需要一个文件路径来处理文件并返回一个输出。

到目前为止的代码:

app = Flask(__name__)
api = Api(app)   
class ectdtext(Resource):
    def get(self, result):
        return {'data': ectd.convert(result)}

categories=convert('/FILES/5cf9-5b67-45ef8-9DD69c-ae571431c665.pdf')   
@app.route('/')
def returnResult():
  return categories



@app.route('/', defaults={'path': ''})
@app.route('/<path:path>')
def get_dir(path):
    return path



if __name__ == '__main__':
     app.run(host="0.0.0.0", port=5000)

所以,线

categories=convert('/FILES/5cf9-5b67-45ef8-9DD69c-ae571431c665.pdf)

以前是硬编码的。现在我想将网页中输入的路径作为参数传递给每个新请求的转换函数。我该如何解决这个问题?

标签: pythonhtmlflaskparametersurl-parameters

解决方案


只需在相应的路由中调用所需的函数:

...
@app.route('/', defaults={'path': ''})
@app.route('/<path:path>')
def get_dir(path):
    categories = convert(path)
    return categories

推荐阅读