问题标签 [postgrest]

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.

0 投票
0 回答
31 浏览

postgresql - Postgres - 函数

我们正在使用 posgrest 并希望创建一个创建 txt 或 csv 文件的函数,并希望在从 rest 端点调用函数时下载该文件。我尝试了 COPY 函数来生成 csv 文件,并希望从 rest 端点下载加载文件。

使用 CSV DELIMITER ',' 复制(从 mytable 中选择 *)到 '\tmp\test.csv';

但是上面的函数说我需要成为超级用户才能将文件写入该位置。

现在我正在寻找一个在内存中生成文件并发送到休息端点的函数。

我的问题是如何在内存中生成文件,然后通过 rest 端点下载文件内容。

0 投票
1 回答
115 浏览

postgresql - Postgrest 查询。当 id = id 或 (user id = id and boolean = true) 时从表中选择 *

我试图在 postgres 上的 postgres 中做一个简单的查询。

基本上这是我要重新创建的查询(ID、Other_id 和布尔值都是表中的列)

我已经尝试了下面的 postgrest url(按照文档)

https://table?and=(id.eq.id,or(boolean.is.true,other_id.eq.other_id)) 但它不起作用。

任何帮助表示赞赏。

0 投票
1 回答
141 浏览

java - 在不同的本地主机端口上使用 postgREST api 的 CORS 问题,然后是本地 Web 应用程序

对于一个项目,我正在研究 postgREST API 并将其应用于正在处理的项目。我只是想在来自 SpringBoot Web 应用程序的 ajax 请求中使用 postgREST api。但是,我遇到了这个问题。根据 postgREST 文档,它将允许来自任何域的 ajax 请求。springboot 应用程序正在 localhost:8080 上运行。

来自获取请求的错误

Web 应用程序是一个 Spring Boot 应用程序,它使用 hibernate 将对象持久保存到 postgSQL 数据库中,我们已经使用运行良好的 CRUD 存储库构建它,但我们的教授希望我们“研究”postgREST 并部分实现。

0 投票
1 回答
314 浏览

postgresql - Vue路由器 - 如何在生产中的新选项卡中打开?

我正在使用 Vue、Vuetify 并且我的数据库位于 postgreSQL 中,并带有来自 postgREST ( https://postgrest.org/en/stable/ ) 的 API 后端。当使用本地主机和哈希模式时,本地一切都很好。使用以下语法时,我可以在新选项卡中打开组件产品:

但是,在带有 postgREST-server 的生产环境中,在新选项卡中打开时,我得到了错误的 url:

当我从上面的 url (3) 中删除/api并像这样重写它时:

我得到正确的页面。
是否可以编写一个可能的nginx规则以确保 http:server_name/api/#/product/1 自动重写为正确的 url http:server_name/#/product?或如何更改vue-router或 vue 配置文件以在生产中获得与 locahost 相同的行为?

0 投票
0 回答
71 浏览

postgresql - 在没有 docker 的情况下将 PostgreSQL 数据库链接到 PostgREST

我想将我的 PostgreSQL 数据库与 PostgREST 链接。互联网上的解决方案(包括文档)涉及使用 Docker 和 Linux OS。我希望在不使用 Docker 和 Windows 操作系统的情况下实现这一点。有没有可能的方法?

0 投票
0 回答
69 浏览

postgrest - PostgREST:使用单个 json 参数对 volatile RPC 的请求并触发多个触发器,需要很长时间才能完成 - 已解决

与通过 psql 调用存储过程相比,我在通过 PostgREST 调用存储过程时遇到了主要的性能问题。两种方法都成功完成,但 PostgREST 需要大约 1 分钟,而 psql 需要 2 秒。由于此过程,有许多语句级别和一些行级别触发器被触发。

这个程序更新数据库,另一个更新程序有同样的问题,

从 psql 调用:

或者简单地说:

这大约需要 2 秒。

从 web 应用程序或通过 curl 调用时

这将需要一分钟多的时间。

我希望这两个调用都需要相似的时间。

我启用了广泛的日志记录来尝试追踪这两种方法之间的差异似乎是进入嵌套触发器时的延迟~

我在 PostgREST 的 GitHub 上提出了这个问题,其中包含一些配置细节:

https://github.com/PostgREST/postgrest/issues/1836

此问题现已解决,详情请参阅 PostgREST github 问题

0 投票
0 回答
103 浏览

vue.js - 如何使用 Vuejs 和 postgREST 发出安全请求

我目前正在制作一个用于密码重置的网站。我使用 vue-cli、postgresql 和 postgrest。为了保护我的网站和 RESTful API 之间的信息交换,我使用了一个 jwt,我把它放在我的请求的标头中。我的问题是,当我提出这些请求时,人们可以从外部找到 jwt。

那么是否可以将这个 jwt 隐藏在标题中?或者还有其他方法可以在 vue 和 RESTful API 之间发出安全请求吗?

我的函数使用获取请求:

每个人都可以看到的 jwt 令牌:

请求头

0 投票
1 回答
330 浏览

postgresql - Supabase / PostgREST:拒绝选择多个

我正在构建一个 supabase 应用程序。每个用户都获得一个 uuid(或多个,如果他愿意),而不是登录。每个知道 uuid 的人都可以完全访问这个 uuid 背后的数据。

所以基本上数据库对任何人都是开放的,只要你使用任何有效的 uuid 来写/读你的东西。

现在的问题是:我不希望用户能够选择表中的所有条目。我想强制每个查询都有一个条件where id = xxx。当然,我可以在我的应用程序中执行此操作,但这还不够,因为我们永远不应该信任客户端……我需要在后端(即在 postgrest/supabase 中)强制执行此操作。

在 Firestore 中,读取权限被分解为getand list,所以我可以只允许get和禁止list,我很高兴。postgrest/supbase 中有类似的东西吗?

0 投票
0 回答
28 浏览

json - 如何将 PostgREST jasonb 对导出为 CSV 作为 React-Admin 中的列?

我从 react-admin 开始,在这一点上被卡住了,谷歌搜索了很多,但没有找到解决方案。

有人也遇到过这种情况吗?

这是我的 jsonb 字段

[{"Id":"1","value":false},{"Id":"3","value":true},{"Id":"4","value":false},{"Id":"6","value":true},{"Id":"8","value":false},{"Id":"9","value":false},{"Id":"10","value":true}]

这是我的代码

感谢大家。

0 投票
0 回答
37 浏览

postgrest - PostgREST 事务

我正在使用 PostgREST 将数据库实体公开给使用这些实体的 Springboot 应用程序。

我的数据库中有两个实体,分别是 Person 和 City。

我想同时保存 Person 实体和 City ,如果这两个实体中的任何一个失败,我希望另一个不坚持 PostgREST。

我想在 PostgREST 上实现事务行为。是否有机会从工具本地实现这一点,或者没有以编程方式删除刚刚创建的异常记录?