微信小程序真机调试--获取不到本地mysql数据库的数据

今天毕设的微信小程序代码告一段落,想着做一下真机调试,但是手机调试时一直获取不到mysql数据库中的数据。
做项目时用的是localhost,真机调试时要用本地的IP地址(我电脑的ip地址是192.168.0.103),但是我简单的把localhost改为http:192.168.0.103后发现还是没用,然后我网上找一些方法,一顿骚操作后就可以了:
首先,win键+X键,选择Windows PowerShell(管理员)(A),然后执行以下代码

net start mysql8.0 (注意:mysql8.0是我在安装mysql8.0版本时,修改services的名称,默认是mysql80好像)
mysql -uroot -p
输入数据库密码后回车
use mysql;
select user, host from user; (结果如图1)
update user set host = '%' where host = 'localhost';
select user, host from user; (结果如图2)
quit; (退出数据库)
net stop mysql8.0 (关闭数据库服务)
net start mysql8.0 (开启数据库服务)

在这里插入图片描述
在这里插入图片描述
以上操作完成后,可以使得任意IP地址都可以访问这个数据库;
然后查看电脑的ip地址,win键+R键,输入cmd,在命令行窗口输入ipconfig,查看ipv4的地址;
接下来就是修改项目中的地址:
首先,我后端使用koa框架,配合mysql插件操作数据库:

// 我创建了一个文件db.js,封装对数据库的基本操作的方法
// 引入数据库 
var mysql = require("mysql")
// 创建数据库连接池
var pool = mysql.createPool({
    host: '192.168.0.103', // 连接的服务器
    port: 3306, // mysql服务运行端口
    database: 'project', // 选择的数据库
    user: 'root', // 用户名
    dateStrings: true, 
    password: 'password' // 用户密码
})
// 对数据库进行增删改查的基本操作
function query(sql, callback) {
    pool.getConnection(function (err, connection) {
        connection.query(sql, function (err, rows) {
            callback(err, rows)
            connection.release() // 中断连接
        })
    })
}
exports.query = query

创建数据库连接池时要注意:本地调试时可以使用ip地址,也可以使用localhost,但是真机调试就要用ip地址,不能使用localhost
然后微信小程序代码中,向后端发起请求的地址都要修改,如:

    wx.login({
      success: res => {
        wx.request({
          url: 'http://192.168.0.103:5000/login/wxlogin',
          method: "POST",
          data: {
            js_code: res.code
          },
          header: {
            'content-type': 'application/json'
          },
          success: function (res) {
            console,log('登录成功')
          },
          fail: function () {
            console.log("index.js wx.request CheckCallUser fail");
          },
        })
      }
    })

这样就可以了,真机调试也不会有问题了!
不过需要注意的一点是,一个项目往往需要特别多的接口,就像我这个项目,虽然只是自己做的一个小项目,但是接口多达20个,在小程序中,一个接口可能在不同的页面中有调用,所以要是修改了ip地址,那小程序中所有调用的接口都要跟着改,项目一旦复杂可能改漏了,就会出现奇奇怪怪的错误,就像我这个项目,把localhost改为192.168.0.103后,小程序中所有的localhost都要跟着改,特别麻烦,所以建议建立一个管理地址的文件,要是ip地址发生改变,改变文件中的地址就好。

评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值