52 接口开发、服务器的基本配置、宝塔面板配置、上传数据库、上传接口源代码、部署静态页面网站
我们角色:纯后端工程师的。
后端要根据策划稿(设计稿)
后端根据策划稿或设计稿开发接口。
前端工程师根据设计稿写html页面。
如果是前后端不分离的:那么只有前端写出来html页面,后端才能渲染数据。
前后端分离的:后端和前端可以并行开发。
1.还原数据库信息
后端工程师去设计表,去创建数据库字典,然后根据可视化工具去创建每一张表
2.使用express脚手架初始化一个项目
express --view=ejs myapp
快速搭建。
3.在项目中配置一些基本信息
-
依赖mysql模块去封装db.js
-
安装 cors ,app.use( cors() ),统一解决跨域
-
404错误 和逻辑错误再统一处理。
-
把它的users路由删除
4.开开心心写接口
参照restful 规范。
比如: get方式并且路由地址为 /users。
5.测试一下接口有无问题
-
如果是get还可以用浏览器测一下 http://localhost:端口/users
-
开发阶段就应该使用 Rest Client进行测试。
6.做为咱们前端工程师要做的
根据静态页面,分析具体的业务根据实际请求发送ajax 。
核心:前后端数据交互
md5
https://www.npmjs.com/package/md5
作用:是把已知的字符串进行加密。
md5(‘a‘)。而每次加密都一样: 0cc175b9c0f1b6a831c399e269772661
关于session、cookie、token
cookie不能跨域,当跨域以后cookie传递不过来 。而session依赖cookie。
另一个现在比较流行且用的比较多的一种方式,那就是token。
特点(规范):
1、后端去把某个数据(经常是对象)进行加密,把明文的数据加密后的密文就叫token字符串,它是有有效的
2、后端需要把这个token返回给前端,前端需要存储在前端的localStorage
3、在以后的请求当中,前端需要把token再传递给后端(后端要进行验证)
可以用get、post、delete、put,通通不用
使用header请求头去传递
比如:某一个请求要验证是否登录。那么就是要验证token是否有效。
/user/edit : 自己编辑自己的个人信息。
前端传递token
$(‘#btn‘).click(function(){
?
let token = localStorage.getItem(‘t‘)
?
$.ajax({
url:‘http://localhost:3000/user/edit‘,
headers:{
authorization:token
},
success(res){
console.log(res,‘结果‘)
}
})
})
?
使用token
jsonwebtoken,简称:jwt。
1、下载
npm i jsonwebtoken
2、加密方法
jwt.sign(payload, secretOrPrivateKey, options)
payload: 加密的数据。是一个对象
secretOrPrivateKey: 锁子
options:设置有效期,有效期基本上都是会设置的。
3、验证方法
jwt.verify(token, secretOrPublicKey)
token: token字符串‘
secretOrPublicKey: 锁子
websocket
es6模块化
webpack
服务器、域名
https://cloud.tencent.com/register 注册。需要认证。
https://cloud.tencent.com/act/free 免费体验馆 。
服务器的基本配置
1、登录密码设置
2、安装可视化的宝塔面板。
就是在linux系统下安装一个软件。 这个软件就叫宝塔。
https://www.bt.cn/bbs/thread-19376-1-1.html
yum install -y wget && wget -O install.sh http://download.bt.cn/install/install_6.0.sh && sh install.sh
2.1进入命令行
输入su。
3、安装完成。
4、开放必要的端口。
宝塔面板配置
1、安装必要的环境软件
2、安装node运行环境 。
上传数据库
上传接口源代码
1、修改代码中的 db.js 数据库配置信息
2、压缩
3、在远程文件创建文件夹
4、上传压缩的文件
5、运行项目
6.映射
实际访问不需要加 3000。
、
部署静态页面网站
1、点击网站
2、添加站点