Skip to content

uniapp 公众号进行本地授权与调试

1、修改本地 hosts 文件

  • 找到 C:\Windows\System32\drivers\etc 下的 hosts 文件,打开文件是这样的 在这里插入图片描述
  • 注释最后一行并另起一行,修改为
javascript
127.0.0.1 你需要修改的地址,例如:www.baidu.com
  • 修改完毕记得保存,如果保存不了就要以管理员身份进行保存

2、刷新 DNS 缓存

  • cmd 执行 ==ipconfig /flushdns== ,这样可以刷新 DNS 缓存,使刚刚修改的 hosts 文件及时生效在这里插入图片描述

3、配置项目代理

  • 打开 uniapp 的公众号项目,打开 manifest.json 文件的源码视图,将以下配置项配入其中
json
	"h5": {
		"devServer": {
			"host": "www.baidu.com", // 用于指定devDerve使用的host,就是公众号项目存放的服务器地址,与hosts文件配置的一致
			"port": 80, // 指定要监听请求的端口号,公众号项目的端口地址,默认80端口
			"proxy": {
				"/api": {
					"target": "http://192.168.50.23:8188", // 请求的后端服务器地址
					"ws": false, // 是否代理websockets
					"changeOrigin": true, // 默认值:false 将主机标头的原点更改为目标URL
					"secure": false, // 是否验证SSL Certs
					"pathRewrite": {
						"^/api": "/api" // 重写之后url为 http://192.168.50.23:8188/api/xxx
					}
				}
			}
		},
		// 其他配置项
	},

如果微信开发者工具强行把 http 转成 https,可以尝试以下方法

当前如果打开着微信开发者工具,先进行关闭,如果当前为关闭状态,直接忽略该步骤
  • Mac 处理方法,如下:
    使用命令行工具,输入如下命令,进入到指定目录 cd ~/Library/Application Support 查看当前目录下文件夹,会发现有“微信开发者工具”目录 使用命令删除微信开发者工具对应的目录 rm -r -f ./微信开发者工具 再重新打开微信开发者工具,输入网址就不会再转成 https 的了
  • windows 处理方法,如下:
    打开C:\Users\xxx\AppData\Local\微信开发者工具
    
	删除User Data 文件夹即可

或者可以在 devServer 中增加 "https": true

4、配置完毕

  • 现在在微信开发者工具内调试授权登录是可以正常授权的,但是调试微信支付还是会异常
javascript
{
  errMsg: 'chooseWXPay:没有此SDK或暂不支持此SDK模拟'
}
  • 此外还有一个 /sockjs-node/info 接口刷屏问题不知道如何解决