使用带有flask_smorest和/或棉花糖的自定义解析器



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

Axios 发送如下数组:

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

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

但是对于我的一生,我不知道如何告诉flask_smorest或棉花糖将这个自定义解析器用于我的 API 的基于MethodView的端点。

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

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

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

这是通过覆盖Blueprint和覆盖ArgumentsMixin中的ARGUMENTS_PARSER来完成的:

import flask_smorest
class Blueprint(flask_smorest.Blueprint):
ARGUMENTS_PARSER = CustomParser()

相关内容

  • 没有找到相关文章

最新更新