1

我正在使用flask-smorest,基于 Flask/Marshmallow 的 REST API 框架,并且希望能够解析使用axios JavaScript 库发出的请求,特别是对于通过查询字符串传递的数组。

Axios 发送这样的数组:

/api/v1/items/?types[]=cd&types[]=dvd

我需要为此创建一个自定义解析器(另请参阅我创建的票证上的有用响应),因此我能够拼凑出一个基本的解析器来满足我的目的。

但是对于我的生活,我无法弄清楚如何告诉 flask_smorest 或 marshmallow 将此自定义解析器用于我的MethodView基于 API 的端点。

我也想在我的 . 中创建一个自定义字段Schema,但我也不知道如何访问查询字符串以便正确解析它。

那么在flask_smorest/marshmallow中为特定类型的查询字符串数组编码集成解析器的最佳方法是什么?

4

1 回答 1

1

假设您创建了一个解析器,如webargs 文档中所示,您需要做的就是告诉您的 flask-smorest 应用程序使用此自定义解析器代替 default FlaskParser

这是通过覆盖Blueprint和覆盖ARGUMENTS_PARSERfrom来完成的ArgumentsMixin

import flask_smorest

class Blueprint(flask_smorest.Blueprint):

    ARGUMENTS_PARSER = CustomParser()
于 2020-05-28T13:22:03.913 回答