参考项目。做了一点改动和完善。
项目源码。还有具体配置方法、sql脚本文件、API接口开发文档、数据库详细说明。
①技术栈:
前端: 微信小程序原生框架 + weui
后端:node.js+express
数据库:mysql
②效果:
③说明
1.管理员也可以是顾客。
所以管理员即可以做一些管理层面的事,也可以点单。
增加管理员方式:手动去数据库修改customer表中的ISADMIN字段(0为普通用户,1为管理员)
2.支付接口我没有做,默认都是支付成功。
小程序想要开通微信支付的功能,需要进行微信认证(300元/年)。
如果你不是个体工商户,没有营业执照,就无法进行微信认证。
你可以去找那种个人开发者支付接口,但这种第三方的不一定安全。
3.关于AppID和AppSecret
首先注册微信小程序,并拿到开发者ID(AppID)和密码(AppSecret),注意和微信公众号的AppID区分开来(用测试号也可以)
项目中用到的登录逻辑:点击按钮等待用户授权,得到授权之后,拿到用户的昵称和头像,再利用接口拿到code和appid,向服务器换取openid,再携带openid(就相当于密码)和昵称进行登录验证。是新用户就为他注册(也就是用uuid模块新生成一个id)。
④部署
参考博客
⑤开发中的一些记录(选看)
后台搭建
提前安装Node.js
安装yarn:npm install yarn -g
安装express脚手架:yarn global add express-generator
在根目录下创建Express工程(使用EJS模板引擎):express --view=ejs server
cd server
yarn install
默认监听3000端口
安装mysql、uuid、request、path、formidable、silly-datetime模块::yarn add mysql uuid request path formidable silly-datetime
开发时安装nodemon方便调试:yarn add nodemon 加上 nodemon ./bin/www
/views文件夹下面放了一些ejs模板文件
/db文件夹下面的每个js文件对应一个模块,每个模块封装了一些操纵数据库表的方法
前端项目
开发工具中配置不校验域名...(因为从基础库 2.4.0 开始,网络接口允许与局域网 IP 通信,但要注意 不允许与本机 IP 通信),自己配置开发工具,去掉warning
开发时用到了WeUI 组件库:存到/style/weui.wxss中,在app.wxss文件中导入,我用的v1.1.1,版本高了好像还有问题
开发流程:商品管理->订单管理->查询功能->部署
有一些报错,需要换最新的nightly版本的开发工具
wx.request发get请求一般没问题,但是发post请求需要加请求头,否则后台收不到数据
header: {"Content-Type": "application/x-www-form-urlencoded"
}