gpt4 book ai didi

无服务端编程服务推荐(前端必备)

转载 作者:qq735679552 更新时间:2022-09-28 22:32:09 26 4
gpt4 key购买 nike

CFSDN坚持开源创造价值,我们致力于搭建一个资源共享平台,让每一个IT人在这里找到属于你的精彩世界.

这篇CFSDN的博客文章无服务端编程服务推荐(前端必备)由作者收集整理,如果你对这篇文章有兴趣,记得点赞哟.

No Server Code Application(无服务端编程服务推荐) 。

写的文章太偏总是没人看,对大家其实帮助也不大,所以写点实用的吧,我相信此文介绍的服务是很多前端开发的痛点,应该也有不少人想象过这样的服务,但是可能因为方法或者其他原因,没有找到适合的服务,今天我就介绍两个比较成熟的,甚至可以在生产环境使用的无服务端编程服务.

问题

  。

一句话总结,就是 。

有没有一个方案,可以简单的部署,然后不需要做任何的服务端开发,即可由前端开发从 JS 端直接向数据库做较为复杂的增删改查?

其实之前我在知乎上看到过这个问题,很多人其实会觉得这个是异想天开,这个问题背后有很多问题,例如:如何做复杂的查询(联合、分组等)?如何实现业务逻辑?如何分发事件给其他系统?如何保障安全(注入、权限等)?

不过,想过这个问题的前端不止你一个,其实不止是前端,服务端同学也非常痛恨增删改查,从很早,服务端框架中就内置各种 crud 脚手架,不过脚手架还是脚手架,还没有达到完全的”无代码“,对前端同学来说总是有成本的.

今天,我们就推荐两个服务,请各取所需.

传统的无服务代码

  。

首先介绍一个思路比较传统的小服务,可能不能很好的使用于生产环境,支持的功能也有限,但是对于想快速开发一个demo,且没有元数据管理等诉求的同学,也不失是一个简单粗暴的解决方案,你只要给他喂一个数据库,他就可以暴露出各种 api 来.

不过这个小服务也有一些问题: 1. 安全方面,不是很能保障。 2. 查询条件的构建,有些麻烦,不如下一个方案方便。 3. 查询有一些隐含的限制,例如查询条数限制在1W以内,而且不可配置。 4. 分组汇总等能力有限,无法叠加其他字段计算.

无服务端编程服务推荐(前端必备)

讲一下优势:

  1. 这个库大概有4300个star,相对来说还是比较热门的。
  2. 使用 nodejs 开发,安装非常简单,没有特别的依赖,这个算是一个优势。
  3. 支持单体、列表等查询,支持分组、关联表等。
  4. 支持直接输出某些图表需要的数据结构,并且可以自动生成x轴的分组等。

具体的功能大家可以去github直接查看,安装和配置也非常简单,基本不需要任何服务端和服务器运维经验.

Hasura,Instant GraphQL for all your data 。

这是第二个服务的标语,这是我在调研 GraphQL 相关生态后,我认为对 data to graphql 封装最彻底的服务,完全实现了三无:

  • 无代码元数据管理
  • 无代码增删改查
  • 无代码逻辑串联
  • 无代码事件分发

同时,他有些特别的优势:

  • 使用 graphql,社区流行的标准前端查询语法
  • 支持各种数据源、支持地理查询等各种查询姿势
  • 非常强大的可视化查询构建器,前端查询代码基本也不需要手写

简单介绍一下 。

查询构建器

  。

这是我最看重的功能,虽然 graphql 官方就是有查询构建器的,但是其实没这么强大,hasura 是做了很多代码层面的封装,才实现了诸多类型的查询组合,直接上图:

  。

  。

无服务端编程服务推荐(前端必备)

  。

这里是一张表,里面有地理信息,整个查询,通过左侧点一点,就可以构建出各种查询(以及删除、增加、更新等操作语法),我其实深深理解构建通用查询接口的参数有多么痛苦,所以这个 Query Builder 对我来说是莫大的福音.

Hasura 是个比较庞大的服务,他的部署是通过 docker 来部署的,所以需要你的服务器或者电脑,有 docker 和 docker-compose 的环境,然后部署就变的特别简单了,一个命令即可搞定.

安装后,启动服务,即可利用你配置的数据库信息自动生成所有表的 scheme 信息,及相应的增删改查方法,然后使用 query builder 构建你的请求即可,无需做任何代码的开发.

另外 hasura 支持一些围绕元数据的其他功能,例如多表组合(通过数据库的view实现),例如 Actions,用来编排和串联多个服务、内外服务、数据接口的,还有 Events,用来做数据的变更通知等。另外,hasura 也支持一些代码层面的使用方式,拥有一些脚手架命令可以自动生成 scheme 等,也可以自己写代码去使用 engine 和 scheme 等.

目前 hasura 的所有功能都支持 postgres 数据库,另外也有支持 mysql 的 beta 版,mysql版没有很多高级功能,但是基本的 query builder 和增删改查是完整的.

官方文档: Hasura GraphQL Engine Documentation | Hasura GraphQL Docs 。

Github 项目: https:// github.com/hasura/graph ql-engine/ 。

mysql 版: MySQL preview | Hasura GraphQL Docs 。

原文链接:https://zhuanlan.zhihu.com/p/374959881?utm_source=tuicool&utm_medium=referral 。

最后此篇关于无服务端编程服务推荐(前端必备)的文章就讲到这里了,如果你想了解更多关于无服务端编程服务推荐(前端必备)的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com