- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个完整记录和完成的 API,使用 flask-restplus 在 python 3.5/flask 中构建。我想添加一大块功能——返回一个 pickle 对象作为我的响应之一。
欢迎不特定于 flask-restplus 的通用解决方案,但由于我的 API 已完全记录并完成(除了这一点),我宁愿坚持下去,而不是从根本上改变我正在使用的框架。
我的模型架构如下所示(简化):
get_fields = api.model('get-myresource', {
'id': fields.Integer(description='Id of the resource.'),
'other_field': fields.Integer(description='some other fields too.'),
'pickled_obj': fields.Raw(description='Marshalling fields.Raw fails, as the serialised binary cant be expressed as json'),
})
class MyClass(object):
# An instance of this class will be serialised with pickle
a_prop = None
def a_method(self):
return 'some_result'
obj_instance = MyClass()
class MyDataModel(object):
# It's actually a SQLAlchemy model, where one of the columns is PickleType, but for the sake of a canonical example...
id = 1
other_field = 2
pickled_obj = pickle.dumps(obj_instance)
import pickle
from flask import request
from flask_restplus import Resource, Namespace
from .my_schema_file import get_fields
api = Namespace('myresource', description='Whatever')
@api.route('')
class MyResource(Resource):
@api.response(200, 'Resource(s) returned successfully', get_fields)
@api.response(400, 'Bad Request')
@api.response(404, 'Not Found')
@api.response(500, 'Application Error')
@api.marshal_with(get_fields, code=200, description='Resource(s) returned successfully')
def get(self):
# Argument parsing and fetch from the database
data = MyDataModel()
return data, 200
最佳答案
最终答案:
最后,我们不再使用 pickle,以避免在更新类时出现版本控制问题,然后尝试从旧版本中解压。
我们最终使用了 this SO answer 中的建议。 ,即使用 jsonpickle库来序列化任意类对象并将其从 API 中吐出。
关于python - 如何通过 API 编码 pickle 对象(最好使用 flask-restplus )?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40551215/
我正在尝试使用 unicorn 运行 Restplus Flask API,但我不断收到此错误: Application object must be callable. 我正在使用 sqlalche
使用 python flask_restplus什么是发布和获取方法的正确方法来获取和推送文件,例如xlsx 到服务器? marshaling需要为此使用吗? 引用:https://philsturg
有什么办法可以对Namespace进行排序吗?条目添加到 Api 之后? 我正在关注文档,流程(AFAIK)似乎是: a) 创建 API: api = Api(version="1.0",
如何使用 Flask restplus 设置路径变量的默认值? 例如,使用以下内容: @api.route('/calendars/coordinates///years/') class Daily
我用 flask-restplus 制作了 api 服务器. 在使用它时,我注意到它可能必须进行版本控制才能扩大规模。 所以引用文档,我发现命名空间和蓝图是可用的。 首先,像这样的文件结构。 /app
所以我在 Flask RestPlus 中有这个模型: NS = Namespace('parent') PARENT_MODEL = NS.model('parent', { 'parent
在 Flask-Restplus 中,我需要对一个属性值建模,该属性值可能是字符串列表或对象列表。 它可以是这样的: { 'my_attribute': [ 'value1'
我正在使用 python 3.4。 我创建了一个 enum 类型,如下所示: import enum class EnumGender(enum.Enum): blank = ' '
我编写了一个提供 API 的 Flask 应用程序。我正在使用 RESTplus 库。 我使用一个模型来格式化数据。如果请求成功,则将值插入模型并返回模型。但是,如果请求不成功,则返回模型并且所有值为
我正在尝试使用 Flask-Restplus 制作一个 api 并用 swagger 记录它。 这是我目前所拥有的,它工作正常,除了我不知道如何添加根路由。 from flask import Fla
我很好奇如何从 Flask-RESTPlus 中的 GET 方法获取查询参数。我没有设法在文档中找到示例。 我以前使用过纯 flask ,我的做法是从 flask 库中调用“request.args.
我在将装饰器应用于我的 Resource 时遇到问题. Api decorators参数被应用于每个资源函数或者我如何理解 decorators范围?我的装饰器只在启动时应用,而不是在每次函数调用时应
我正在使用 Flask Rest-plus 模型来验证 POST 有效负载,但是如果存在任何额外/未知字段,我希望模型出错。 正在使用的型号: interface_config = api.model
我正在使用python flask创建REST API。 API已准备就绪,并且可以在我的本地主机的端口号8000上使用。现在,我打算为该REST API提供一个用户友好的界面,为此我决定使用pyth
我正在尝试从Flask-RESTplus获得Swagger UI,并在使用Nginx作为代理的服务器上工作。 Swagger在/ api上提供服务,并使用http://localhost:5000/a
目前命名空间解析器验证请求参数并抛出错误 { "errors": { "file": "Missing required parameter in an uploaded fi
给定这个 Flask Restplus 应用程序: from flask import Blueprint, Flask from flask_restplus import Api, Resourc
我正在尝试使用 Flask-RESTPlus 0.10.1 创建一个自定义字段来验证我的 API 中的 POSTed JSON 下面是基本设置... from flask_restplus impor
除了能够使用 Swagger UI 自动为我们的 API 生成交互式文档之外,使用 Flask-RESTplus 还有什么真正的优势吗?超过Flask-RESTful ? 最佳答案 我都使用过,我们切
我有一个 Flask REST API。我用healthcheck.EnvironmentDump以便轻松转储我的服务运行的环境。是否可以将端点添加到 Restplus 生成的 Swagger 文档中
我是一名优秀的程序员,十分优秀!