- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我正在使用 python-eve -API(简称eve
)访问MongoDB。插入一些示例数据后,我正在使用 Chrome's Postman测试 API。
自从 eve 提供了除了请求的数据之外的附加信息和 HATEOAS directives如 docs 中所述我只是想知道如何仅请求 _items
字典(如果用 Python 语言来说,则将其称为 dictionary
;如果用 Python 语言来说,则将其称为 object
) JSON 或 JavaScript)。
因此,示例请求 http://127.0.0.1:5000/packagings/
给出了如下所示的响应,我只对 _items
中包含的数据感兴趣>-字典/-对象。
当然,我可以在接收并存储完整响应后提取所需的数据。但是,有没有办法只请求我感兴趣的数据,以减少额外的数据提取。收到数据后如何处理数据?
{
"_links": {
"self": {
"href": "packagings",
"title": "packagings"
},
"parent": {
"href": "/",
"title": "home"
}
},
"_meta": {
"max_results": 25,
"page": 1,
"total": 1
},
"_items": [
{
"diameter_dk": 0.0144,
"_created": "Tue, 17 Nov 2015 21:15:37 GMT",
"factor_fa": 2.1,
"_id": "564b98f955c40f29843128df",
"free_volume": 0.89,
"title": "raschigring10x10x0.5",
"_updated": "Tue, 17 Nov 2015 21:15:37 GMT",
"_links": {
"self": {
"href": "packagings/564b98f955c40f29843128df",
"title": "Packaging"
}
},
"specific_weight": 920,
"title_hr": "Raschig-Ring 10x10x0.5",
"specific_surface": 500,
"specific_number": 770000,
"_etag": "bcb4080b61028405babcd960196d27208c3eabd3"
}
]
}
最佳答案
您可以通过在配置设置中设置 HATEOAS = False
来禁用 HATEOAS。这应该会大大减少负载,使其更适合您的用例。
编辑:您还可以选择通过将回调函数 Hook 到 on_fetched_resource
事件来转换响应负载。
from eve import Eve
def on_fetched_resource(resource, response):
del(response['_links'])
del(response['_meta'])
# would result in an empty JSON document
# del(response['_items'])
app = Eve()
app.on_fetched_resource += on_fetched_resource
if __name__ == '__main__':
app.run()
由于响应是一个字典(毕竟是 JSON),您仍然需要为文档数组提供一个键。
关于python - 仅使用 python-eve API 向 MongoDB 请求 `_items`,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33767597/
我正在为生产设置一个 Eve 实例,想知道 Eve 的“首选生产设置”是什么——如果有的话。uWSGI 似乎工作得很好。Gunicorn 与标准 Flask 配合得很好——但对于 Eve 来说并不那么
我想在 mongoDB 中导入图像以及任何字典。字典应该提供图像标签,在我定义架构的那一刻我不知道其中的类型、数字和名称。 我试图在前夕添加一本字典但没有成功: curl -F"attr={\"a\"
我用这个模式定义了一个资源 # 'people' schema definition 'schema'= { 'firstname': { 'type': 'string',
在我的应用程序中,MongoDB 集合需要由服务器端脚本作业更新(即:每 30 分钟从其他 API 抓取/拉取的 cron 作业)。我真正想做的是对 MongoDB 集合进行更新,但让数据根据架构进行
所以我们有简单的.eve 和.adam 文件,compiled ASL ,以及 boost 和 adobe 所需的所有内容。我们需要一个跨平台功能来渲染我们的布局,并在我们的平台上作为真实窗口移动(我
我最近开始关注 Eve。 我读过夜install guide并成功导入。 然后,我尝试了 quick start guide ,并对 settings.py 进行了一些更改。当我尝试运行 run.py
我正在尝试使用 Eve 为简单的项目列表提供 RESTful API。 我想使用 1)一个 HTTP 请求来创建一个列表(可能带有初始项目),2)一个 HTTP 请求来添加一个项目(一个常见操作),3
我有包含嵌入图像列表的项目端点。该方案如下所示: _schema = { 'name': required_string, # group name 'description': {
我有一个文档,其中用户有 2 个地址,如下所示。我将如何在 python-eve 中为此创建模式? 此外,我将如何创建 API 请求以允许用户仅更新邮政编码。他们是否必须重新发布整个文档? {
有什么方法可以返回字段包含某些值的项目?例如。 GET /people?contains="foo" 返回名称中包含“foo”一词的所有人员。 提前致谢 最佳答案 您可以使用 mongodb $reg
为了保护我的公共(public) Eve REST API,我希望避免类似 '{"_status": "ERR", "_error": {"code": 422, "message": "Insert
我正在尝试设置 Python-Eve。 Python-Eve Installation Guide 我已完成以下步骤: C:\Users\Ari\Desktop\rizzla>python -m pi
我有一个基本模式,我正在弄乱它,看看 eve 是否适合我的需要。我的问题是我是否可以通过使用方法为字段设置默认值,并且使用参数会很棒,尽管我怀疑这是可能的。 类似于: from utils impor
我正在尝试为架构 A 中的文档创建 on_insert 事件 Hook ,对架构 B 中的文档调用 eve 的 patch_internal 。 由于触发事件 Hook 的请求是 A 的 POST,因
我用 Eve 和 Python 构建了一个简单的 REST api。 from flask import redirect, send_from_directory, render_template
我创建了一个像下面这样的授权 token 类,我使用 self.set_request_auth_value(user['_id']) 来设置这个请求的用户,在一些我想访问这个的钩子(Hook)中用户
我在对包含连字符的元素执行获取请求时收到 404。我正在运行 python-eve API 框架。 $ curl -i http://api/words/apple HTTP/1.0 200 OK $
我有一个名为 Case 的 mongo 集合,其中包含以下记录: { _updated: "Tue, 26 Jul 2016 10:47:34 GMT", user_id: "rona
Python eve 到目前为止对于所有用例来说看起来都非常好,除了一个客户端在资源上分页并且同时更新了一些对象的情况,我们可以在分页时进行快照或任何其他处理方式吗情况如何? 流程就像 1. GET
如何返回按日期或日期间隔过滤的项目?我正在根据 eve 的 documentation 中的过滤示例尝试类似的操作: /records/?where={"date": {"$gte": "2016-1
我是一名优秀的程序员,十分优秀!