如果你想用swift 语言构建后台服务端,那么恭喜你,目前流行的swift server 有两款,一款是基于swift语言的Swift的Perfect服务端,还有一款是vapor服务端,两者相比vapor服务端更容易上手,搭配部署环境更容易,后期服务器更新代码也是一键傻瓜式操作。Perfect服务端环境搭配和后期代码更新相对复杂,反正作者尝试过两次,都失败了,按照官方教程中间会出现莫名的报错,而vapor一次成功。
最流行swift server vapor如果你是一名iOS开发者,在准备搭建环境之前,建议你先看看vapor官方的环境搭建和安装方法 vapor官方安装文档 中间会下载一些辅助工具,如果你不能翻墙,那么很可能无法完成安装
先说明一下,请你不要被我上面的介绍搞蒙圈了,说白了,这个swift-vapor服务器就是一个swift工程,可以在工程里面利用swift语言编写api接口,操作数据库等等。
学会这个,你可以用这个vapor服务端做哪些事情?
1.iOS、Android 后台服务器开发,前后端自己可以单抗了~
2.如果你会html开发,那么控制台,网页你也可以单抗了~
3.小程序后台?没问题!win应用后台,mac应用后台都能胜任
4.主流服务器能做的事情vapor都能做
为了提起你的兴趣,在安装之前先介绍下我利用swift-vapor服务器开发的成果
1.iOS app 一枚(应用名:私人社区 App Store链接)
2.iOS app (私人社区)配套官网一个:私人社区官网一私人社区官网二
3.小程序一枚(正在开发中...)
swift-vapor 服务端开发教程-开源项目私人社区APP前后台 swift-vapor 服务端开发教程-开源项目私人社区APP前后台开始安装:
1.安装安装Vapor和toolbox
安装指令:
curl -sL check.vapor.sh| bash
curl -sL toolbox.vapor.sh| bash
备注:我是利用mac 自带的终端执行的命令
2.新建工程
安装指令:
vapor --help
vapor new yourVapor
备注 yourVapor 是指你server工程的名称可以随便取,成功之后如下图
vapor02.png3.打开项目
vapor xcode-y
打开项目之后,找到sources目录下的app/main.swift文件,拷贝下面的代码cmd+a,cmd+v
import Vapor
let drop = Droplet()
drop.get { req in
return try drop.view.make("welcome", [
"message": drop.localization[req.lang, "welcome", "title"]
])
}
drop.get("json") { request in
return try JSON(node: [
"number": 123,
"string": "test",
"array": try JSON(node: [
0, 1, 2, 3
]),
"dict": try JSON(node: [
"name": "Vapor",
"lang": "Swift"
])
])
}
drop.resource("posts", PostController())
drop.run()
然后运行选择app运行在mac上
在浏览器输入并访问 http://localhost:8080 可以看到一个网页
swift-vapor 服务端开发教程-开源项目私人社区APP前后台
在浏览器输入 http://localhost:8080/json可以看到一段json E973FB54-FCD1-485B-B38F-DDF47F80DA97.png
4.配置数据库
(备注:下面操作可能需要翻墙)
如果前三步你没有出现什么报错和异常,你应该可以跟着我继续了,如果出现问题可以在下面留言。
使用Postgres作为数据库,
安装部署Homebrew,然后利用Homebrew安装Postgres数据库,
brew install postgres
然后在heroku上面部署自己的服务器:https://dashboard.heroku.com/
首先得先去官网注册个账号,然后
安装Heroku toolbeit 命令号工具,安装好之后测试下,没啥问题就登陆了,后面账号密码,就是你在heroku官网注册的
heroku --version
heroku login
75F1B609-3D39-45CC-AA61-A2809051D314.png
5.部署服务器
先cd到工程文件夹
git init
git add .
git commit -am "xxx"
提交成功之后,开始设置服务器
vapor heroku init
接下来会有几个问答需要你确认,配置服务器用的(不要怕输错,根据自己的需求,后面可以去heroku官网找到自己的app,在设置里面修改)
1.Would you like to provide a custom Heroku app name?
你需要自定义你的Heroku app名字吗,当然需要,输入Y
2.Custom app name?
'你的APP名字,例testqq'
3.Would you like to provide a custom Heroku buildpack?
是否需要编译空间 输入N,
4.Are you using a custom Executable name?
N
5.Would you like to push to Heroku now?
Y
稍等会,推送完成之后就可以访问你的远程heroku服务器了
https://testqq.herokuapp.com/ (备注:这里的testqq就是刚才设置的app名字)
最后一步:给你的远程服务器配置数据库
heroku addons:create heroku-postgresql:hobby-dev
你可以访问你的远程服务器资源,如:获取json:https://testqq.herokuapp.com/json
备注:每次你修改完服务器代码之后,你只需要:
git commit -am "加了新东西"
git push heroku master
Ok,到此为止,如果你以上过程中没有出现什么问题,那么你基本上已经学会如何利用Swift写服务器了,在此之前,你可以先下载我的服务端和客户端代码跑起来预习了解自己尝试下,服务器工程需要cd到目录,用vapor xcode -y 打开
vapor xcode -y
服务器本地需要安装
pgAdmin 4,最下面附件有,方便调试管理。
私人社区iOS app服务器接口截图
网友评论
Application error
An error occurred in the application and your page could not be served. If you are the application owner, check your logs for details.