最近在学习Vue+Node+MongoDB全栈开发,因为项目规模比较大,中间件也比较旧,为了能更好的有针对性的学习,于是自己尝试搭建了新版本的中间件。以下是期间遇到的坑:
创建项目:
通过npx命令(npm5+版本自带的命令),这里注意要指定create-nuxt-app版本,目前最新版本是3.2.0,3以上版本,没有server文件夹
正常安装方式:npx create-nuxt-app projectName
指定脚手架版本:npx create-nuxt-app@2.9.2 projectName
注意创建项目时,记着在选择配置项时,选上服务器框架koa或者express等,要不然创建出来的项目还是没有server文件夹
每次运行时,nuxt都会询问Are you interested in participation?
如何在每次运行时能忽略该问题?
解决方法:
打开 node_modules > @nuxt > telemetry > dist > module.js
accept改为false
微信公众号-微信验证接入
利用闪库內网穿透软件代理本地服务,首次验证公众号服务器,微信验证接入过程就是微信给你的服务器发送一个get请求,请求中携带signature、timestamp、nonce和echostr四个参数,其中signature为签名,timestamp为时间戳,nonce为一个随机字符串echostr为返回码,在自己的controller里接收这四个参数,然后对timestamp,nonce,token这三个参数做运算,如果运算结果符合预期,将echostr返回给微信服务器,否则返回任意其他字符串。
具体运算步骤为:
1.将微信公众号测试平台上填写的token和timestamp,nonce按照字典序排序
2.对排序后的参数进行sha1加密
3.如果加密后的结果和signature相同则运算通过返回true,否则返回false
微信公众号-测试号的注册和配置
微信公众号测试号提供了一个测试平台,可以在不申请微信公众号的前提下,使用微信提供的公众号接口,注册地址为:mp.weixin.qq.com/debug/cgi-b…
注册完成后会分配给开发者一个appID和appsecret 这是开发测试号的凭证,很重要。
在微信测试号首页需要填写“接口配置信息”,填写URL和Token。其中 URL是接受微信验证接入请求的地址,端口号必须为80端口,如:http://48.101.190.197/wechat-hear, Token是一个随机字符串,用来做验证。“接口配置信息”填写完成后,点击接入测试按钮,微信服务器会发送请求,启动验证接入流程。
2,在vue SSR中实现微信网页授权机制和用户资料获取
公众号appID、appsecret的获取;
关注我们测试的公众号;
配置扫码用户授权后回调的域名。
3, 在Vue SSR中实现微信JS-SDK权限接入