代码之家  ›  专栏  ›  技术社区  ›  Kev

来自JavaScript(HTML5)的PostgreSQL套接字

  •  5
  • Kev  · 技术社区  · 14 年前

    我正在寻找一些选项来直接连接到PostgreSQL服务器,使用web浏览器客户端的JavaScript,而不需要web服务器或中间件。在github上,我发现了三个项目:

    1. node_postgres
    2. node-postgres
    3. postgres-js

    它们看起来都很早,但至少有些活跃的发展。

    他们都做了大致相同的事情吗?他们做的是我想要的吗?有没有人有任何经验,他们可以推荐一个超过其他?

    3 回复  |  直到 14 年前
        1
  •  0
  •   Kev    14 年前

    淋巴结postgres是 inspired by PostgresJS做了大致相同的事情。

    然而,它们似乎都是自己的中间件,因为它们需要node.js,这是web服务器的服务器端JavaScript实现。因此,它们会切掉一层,但仍然不是直接连接到PostgreSQL服务器的东西。

    不过,可能有一种方法可以将其中的代码与一些HTML5套接字示例结合起来,直接从web浏览器客户端建立连接。

        2
  •  0
  •   Rdbhost    12 年前

    如果您对客户端JavaScript感兴趣,正如OP的问题所暗示的那样,但是您并不坚持拥有服务器,那么有一个商业服务可以帮助您。

    Rdbhost服务使PostgreSQL服务器可以从客户端JavaScript访问。使用服务器端白名单和自动白名单填充系统,有一个安全系统来防止未经授权的查询。

    它使用普通的老AJAX风格的http请求,提供jQuery扩展以方便查询。

    https://www.rdbhost.com .

        3
  •  0
  •   Mihail Gershkovich    7 年前

    今天没有安全的解决方案。可能的解决方案之一是htsql: http://htsql.org/

    但是在那里你使用网址来查询,即使使用https你的查询也将是纯文本的!

    您应该/可以使用小型Web服务器来处理请求。或者你可以编写一个应用程序,或者使用本地postgres服务器来处理连接(在这种情况下,你仍然需要某种web服务器)。

    问题很简单:您的webbrowser在与web对话的协议中受到限制,postgres不在这个列表中。事实上,您不应该试图克服这个问题,使用服务器-客户机体系结构是一个非常好的解决方案。使用JS格式化请求,使其尽可能小,并让web服务器脚本将其解释为功能性sql请求。答案可以被解析为更短的响应,然后是一个sql数据传输,而您只需要在您这边解释它。由于您将在所有方面创建interperer,因此在直接db连接的情况下,您将实现更高的抽象,从而独立于您使用的后端引擎。