当前位置: 首页 > wzjs >正文

深圳网站建设怎么样深圳抖音seo

深圳网站建设怎么样,深圳抖音seo,java图书管理网站建设,广州网站建设外包目录 配置使用 验证 token使用 上文部署高可用PostgreSQL14集群后,本文介绍PostgREST,以及如何基于PostgREST实现数据库即服务,PostgREST可以在 PostgreSQL 数据库上通过解析数据库结构(如表、视图、存储过程、权限等&#xff…

目录

配置使用

验证

token使用


上文部署高可用PostgreSQL14集群后,本文介绍PostgREST,以及如何基于PostgREST实现数据库即服务,PostgREST可以在 PostgreSQL 数据库上通过解析数据库结构(如表、视图、存储过程、权限等)自动生成 RESTful API,并直接转换为标准的 HTTP 接口,相当于消除了简单场景下的后端代码和服务,与之前绍过的MagicAPI这种基于SpringBoot的快速api生成工具(magicApi)相比,magicAPI因为复杂度高反而意义不大了(至少在pg数据库中,其他数据库不一定有PostgREST这种工具)。

软件架构逃不开合久必分分久必合的趋势,现在硬件这么能打,玩明白数据库高级服务就可以不用搞那些复杂的后端,等业务足够复杂再去上微服务等分布式架构才是合理的;

配置使用

直接参照官方文档操作PostgREST,复用上文的环境,在100.3.254.211这个主节点上下载二进制文件 PostgREST,创建配置文件,并做成服务启动:

# json解析工具
[root@node2 postgrest]# yum install -y jq
# 配置postgrest
[root@node2 postgrest]# mkdir -p /opt/postgrest
[root@node2 postgrest]# chown postgres:postgres /opt/postgrest/ -R
[root@node2 postgrest]# cd /opt/postgrest
[root@node2 postgrest]# chmod +x postgrest
[root@node2 postgrest]# cat tutorial.conf 
db-uri = "postgres://authenticator:admin123@localhost:5432/postgres"
db-schemas = "api"
db-anon-role = "web_anon"# 配置成服务
[root@node2 postgrest]# cat /etc/systemd/system/postgrest.service
[Unit]
Description=PostgREST API Server
After=network.target[Service]
Type=simple
User=postgres
Group=postgres
ExecStart=/opt/postgrest/postgrest /opt/postgrest/tutorial.conf
Restart=always
RestartSec=5
Environment=PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin[Install]
WantedBy=multi-user.target# 启动
[root@node2 postgrest]# systemctl daemon-reload 
[root@node2 postgrest]# systemctl restart postgrest.service 
[root@node2 postgrest]# systemctl status postgrest.service 

在postgresql中创建用户和权限:

postgres=# create schema api;
postgres=# create table api.todos (
postgres(#   id int primary key generated by default as identity,
postgres(#   done boolean not null default false,
postgres(#   task text not null,
postgres(#   due timestamptz
postgres(# );
postgres=# insert into api.todos (task) values ('finish tutorial 0'), ('pat self on back');
postgres=# create role web_anon nologin;
postgres=# grant usage on schema api to web_anon;
postgres=# grant select on api.todos to web_anon;
postgres=# create role authenticator noinherit login password 'admin123';
postgres=# grant web_anon to authenticator;

验证

这就ok啦可以使用curl来测试API接口了,3000是postgrest提供的服务端口,web_anon用户能查到api这个schema下的todos表,并提供查询服务;

[root@node2 ~]# curl http://localhost:3000/todos |jq
[{"id": 1,"done": false,"task": "finish tutorial 0","due": null},{"id": 2,"done": false,"task": "pat self on back","due": null}
]

token使用

postgrest还提供基于jwt的认证机制,官方文档写的很清晰,在jwt.io中拿到手动生成的token,并带入curl请求中:

export LC_CTYPE=C
echo "jwt-secret = \"$(< /dev/urandom tr -dc A-Za-z0-9 | head -c32)\"" >> tutorial.conf[root@node2 postgrest]# cat tutorial.conf 
db-uri = "postgres://authenticator:admin123@localhost:5432/postgres"
db-schemas = "api"
db-anon-role = "web_anon"
jwt-secret = "chthyFjIdcLxEgKGHh780q5ly3yPebW1"# 配置文件中增加了jwt-secret重启服务
[root@node2 postgrest]# systemctl restart postgrest

复制这个jwt-token放入环境变量并重启postgrest服务:

[root@node2 postgrest]# export TOKEN="eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJyb2xlIjoidG9kb191c2VyIn0.rIRseKU6UQv7GA_sY6tBYsOt4-0nK0zCmP_y1jsIxA0"[root@node2 postgrest]# curl http://localhost:3000/todos -X POST      -H "Authorization: Bearer $TOKEN"        -H "Content-Type: application/json"      -d '{"task": "learn how to auth"}'[root@node2 postgrest]# curl http://localhost:3000/todos |jq
[{"id": 1,"done": false,"task": "finish tutorial 0","due": null},{"id": 2,"done": false,"task": "pat self on back","due": null},{"id": 3,"done": false,"task": "learn how to auth","due": null}
]

以上简单测试实现PostgreSQL的数据库即服务的配置,部署数据库就能提供api,还支持试图、函数等高级使用,而且这个开源工具还比较活跃,是个很好的选项,后续高级功能待研究;

http://www.dtcms.com/wzjs/470919.html

相关文章:

  • 自己做视频网站 在优酷推广长沙网络营销哪家平台专业
  • 给网站做解答是干嘛的武汉久都seo
  • 深圳知名网站建设哪家好抖音seo代理
  • c 能用来做网站吗企业qq下载
  • uc官方网站开发中心成都关键词优化排名
  • 网站建设开发费会计分录店铺推广渠道有哪些
  • 四川兴昌建设有限公司网站发稿
  • 阿里云服务器免费试用保定百度推广优化排名
  • 网站开发服务器网站源码平台
  • 网站建设公司 知乎百度账号一键登录
  • 新余建设网站湘潭网站seo
  • 网页设计html代码翻译seo自动排名软件
  • 广州建立公司网站多少钱模板网站建站哪家好
  • 做外贸的人如何上国外网站seo搜索引擎优化课程
  • 小网站如何做武汉seo关键字优化
  • 香港公司注册开户多少钱seo推广一年要多少钱
  • 夜夜做新郎网站在线视频昆明网站开发推广公司
  • 黑龙江做网站的公司绍兴seo排名公司
  • 珠海网站建设q479185700强涵腾讯企点官网
  • 做兼职拍照片传网站2022知名品牌营销案例100例
  • 怎样做免费网站卖东西阿里巴巴国际站运营
  • 南京小程序开发制作杭州网站优化效果
  • 福田企业网站推广公司营销网站建设选择原则
  • 毕业设计旅游网网站设计最新一周新闻
  • 响应式 网站建设河南省干部任免最新公示
  • 新乡营销型网站建设北京做网络优化的公司
  • 网站备案收费吗学大教育培训机构怎么样
  • 怎样做关键词网站连接种子搜索引擎
  • 网络咨询服务公司经营范围百度seo优化价格
  • 式网站台州网站建设平台