问题标签 [kinto]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
javascript - 如何撤消更改为未同步的集合?
如何撤消对数据库的未同步更改?
用例场景
我想让用户在他执行一个数据库操作后至少几秒钟内撤消数据库操作(即删除)的可能性。
一种可能性是保留从数据库中删除,直到撤消它的时间过去,但是我认为在代码中反映我将在 UI 中看到的内容会更加简化,只是为了保持 1:1 .
所以,我尝试在删除之前存储对象,然后更新它(这样_status
它就不会被删除了):
但我得到了错误Error: Record with id=65660f62-3eb1-47b7-8746-5d0b2ef44eeb not found
。
我还尝试使用以下方法再次创建对象:
但我得到一个Id already present
错误。
我也快速浏览了源代码,但找不到任何undo
功能。
我通常如何撤消对未同步的 kinto 集合的更改?
https - 如何通过 docker 容器中的 https 服务 Kinto?
正如 Kinto 文档中所写,我可以通过这种方式指定自定义配置:
docker run --env-file ./kinto.env -p 8888:8888 kinto/kinto-server
.
此外,我似乎可以建议使用该属性的 http 方案。http_scheme
现在,如果我:
- 放入文件
KINTO_HTTP_SCHEME=https
;kinto.env
- 通过上面的命令运行 Kinto,并且;
- 转到https://example.com:8888/v1/;
我得到一个空白页。
附加信息
如果我改为导航到http://example.com:8888/v1/,我会在页面上获得通常的 JSON 配置。此 JSON 还包含一个url
属性,即https://example.com:8888/v1/(而不是http://example.com:8888/v1/),所以似乎正在发生一些事情:.env
文件已被读取。该链接是可点击的,但如果我点击它,我仍然会得到一个空白页面。
这是一个错误吗?我该如何解决?
笔记
这很重要,因为如果页面是通过 https 提供的,Chrome 将不允许我提供 http 内容。它完全阻止了请求,在控制台中显示了适当的错误:d Content: The page at 'https://example.com/' was loaded over HTTPS, but requested an insecure resource 'http://example.com:8888/v1/'. This request has been blocked; the content must be served over HTTPS.
金托 说:Fetch API cannot load http://example.com:8888/v1/. Failed to start.
Error: HTTP 0; TypeError: Failed to fetch(…)
python - 在 Kinto 中阅读通知
在 Kinto 中,我想收到已读通知。我有以下设置:
通知被触发,但只有一次。要再次接收它,我必须更新记录,然后,第一个 GET 再次触发通知。其他相同的 GET 请求会收到正确的 HTTP 响应,但不会通知 fnc_testev。这是设计使然,还是我遗漏了什么?
事实上,我想在事务提交(AfterResourceRead)之后获得读取通知。Kinto 有这个功能吗?
kinto - 如何为单个集合创建验证器?
我需要构建一个自定义 id 验证器,该验证器将应用于单个集合,其 id 将始终是预定义的(不需要生成器)。
在关于 id generators的文档中,它是这样写的:
目前自定义生成器的配置适用于每个资源(桶、组、集合、记录)。这个微小的限制可以很容易地解决,不要犹豫与我们联系!
但是没有任何关于 id 验证的记录。
那么,我该如何:
- 实现一个 id验证器,即
- 将只适用于一个集合?
kinto - .sync() 函数是如何工作的?
我正在查看Kinto 文档中同步操作的图表,但我有疑问。
为什么 .sync() 是 pull.then(push).then(pull) 而不是 pull.then(push)?
我们需要最后一次拉动做什么?
kinto - `collection.sync()` 无法按预期工作 [Kinto.js]
我有两个客户A
并B
执行此操作:
- 客户端
A
创建并 .sync()ed 一个记录集合。 - 客户端
B
.sync()ed 并收到带有单个记录的集合。 - 客户端
A
删除并 .sync()ed 集合。此时,客户端A
(通过 JS api 和 IndexedDB api 检查)和服务器(我通过 http 调用检查)都没有集合。 - 客户端
B
.sync()ed,但记录仍然存在。
我不认为这是预期的行为。什么可能导致这种情况?
PS Client A 用 删除virtual: false
,因为它不再需要本地数据库中的记录。可能是这样吗?这是否会改变服务器上的某些内容?
postgresql - Kinto postgresql 连接未释放
我使用此基础https://github.com/Kinto/kinto-heroku 在 Heroku 上部署了 kinto
我使用 kinto 的应用程序正在运行。然后我使用端点
添加了一些监控。
几分钟后,我的heroku postgresql(免费)实例的所有(20)连接都被占用了。
我已经尝试了该设置,但是当所有使用 kinto 的池连接再次无法解决时(池超时错误)。
似乎 kinto 没有释放使用心跳端点创建的连接......__heartbeat__
pool_size
你能给我一些建议吗?
swift - Alamofire JsonEncoding 和 UrlEncoding
我需要使用 Alamofire 发送补丁请求,我的问题是我需要在此请求中同时使用 URLEncoding 和 JSONEncoding。
如何在此请求中添加带有参数的 URLEncoding ?我应该使用 NSURLRequest 而不是 URL 吗?