记录Parse+PostgreSQL作为轻服务器的使用(MacOS)
引言
从2022年末开始用aws-amplify作为应用程序的轻后端使用,但在2024年发现服务器居然要科学上网才能访问了,而且aws-amplify在很多时候可操作性比较低,并且数据返回错误及延迟比较大(也可能是本人使用问题),因此考虑尝试别的轻后端来使用,翻来覆去也就找到Parse是免费开源的。
Parse环境搭建
网址:Parse官方
依赖 |
---|
Node.js |
MongoDB或postgreSQL+postGIS |
mongoDB虽然好用,但是收费,因此采用了postgreSQL+postGIS的方案。
- Node.js 安装: 该项比较简单,跳转链接
- PostgreSQL+postGIS安装:
PostgreSQL官方
PostGIS官方
中文手册
官网有几种安装方:
1.Interactive installer by EDB ,这个太坑了,postgreSQL安装好后要安装postGIS,用它自带的stackBuilder,怎么安装都提示报错sumcheck啥的,完全不知道原因,各种资料也是解决不了。
2.Postgres.app安装,强烈推荐用postgreSQL.app安装,真的方便太多,根据视频教程,安装的比较快
3.homebrew,mac用的熟练使用,postgis依赖蛮多,个人试了一下切换了源还是有下载失败的情况
1 | Postgres测试:psql --version |
1 | postgis测试:CREATE EXTENSION postgis; |
- 安装可视化界面PGadmin
官方地址:地址
坑:
1.mac安装好后并不是root用户,而是给你创建了一个postgres的用户,所以使用psql命令或postgres命令都无法操作数据库,会报错:
1 | FATAL: could not open lock file "/tmp/.s.PGSQL.5432.lock": Permission denied |
这个时候有2种解决方法,一是输入如下命令,切换为临时的postgres用户,但每次切比较麻烦
1 | sudo -u postgres psql |
第二种是直接在数据库中创建一个你需要的用户名的对象,右击下图中的登陆/组对象,然后创建即可
同样的,如果在运行parse-server的过程中如下报错,也是因为mac用户的问题。
1 | error: role "xxxxxxxxxxx" does not exist |
Parse本体安装
用npm安装比较简单。
1 | npm install -g parse-server |
1 | npm install -g parse-dashboard |
parse-server是服务器本体,parse-dashboard是一个可视化的webUI。
启动服务器:
1 | 输入:parse-server --appId APPID --masterKey MASTERKEY --databaseURI postgresql://localhost:5432/my_db |
1 | 测试:浏览器访问http://localhost:1337/parse/health |
返回{“status”:”ok”}则启动成功。
启动UI并连接服务器
1 | 输入:parse-dashboard --dev --appId APPID --masterKey MASTERKEY --serverURL "http://localhost:1337/parse" --appName APPNAME |
浏览器访问http://localhost:4040/出现parse的UI则成功。
Parse-SDK(Xcode/Swift)
1.用cocopods安装SDK。
1 | pod 'Parse','~> 1.19.4' |
坑:
Xcode编译报错,但我工程的deployment target 已经非常高了(16.4)不可能是这个的问题,参考地址,下载libarclite_iphoneos.a放入提示错误的路径内。
记录Parse+PostgreSQL作为轻服务器的使用(MacOS)
https://www.kfzzzzzz.cn/2024/02/11/记录Parse+PostgreSQL作为轻服务器的使用(MacOS)/