前言
最近做了一个微信小程序+SpringBoot
的一个项目,在编译器中用localhost
请求后台可以实现,但是在手机上进行真机调试就无法正确的从后台请求数据,问题已经解决,下面是我的一点经验
获取本机的ip地址(ipv4)
这里macOS
与Windows
有区别,本人用的是macOS,在控制台输入ifconfig
,找到en0
中的ipv4地址
windows
我记得控制台命令是ipconfig
手机打开开发者模式
这个因为每个手机操作不同,这里也请读者自行解决,这一步存疑,因为我在网上搜的解决方法是有一步进入开发者模式的,但是本身我手机就在开发者模式,所以我也不太清楚是不是必须要进入开发者模式
SpringBoot中配置刚刚查询到的ipv4地址
在application
文件中配置sever
中的address
为刚刚查询到的ip地址
注意这里只需要配置一下SpringBoot的ip,mysql的url不用改变
配置微信小程序向后台请求的ip地址
平时我们用电脑进行开发都习惯用localhost
来向后端进行请求,但是真机调试必须配置一下,
将我们平时请求的http://localhost:8080
改为刚刚请求的ip
,http://192.168.xxx.xxx:8080
的形式
将手机和电脑处在一个网络之中
我一开始用的校园网,调试是会出错,所以我直接用手机开热点给电脑,直接用局域网来进行
链接
最后真机调试就可以用手机
从我们电脑端
的SpringBoot后台
获取数据了
常见问题
在配置完sever.address
后运行报错
org.springframework.context.ApplicationContextException: Failed to start bean 'webServerStartStop'; nested exception is org.springframework.boot.web.server.WebServerException: Unable to start embedded Tomcat server
这里的原因是你的IP地址
变化了,这时候我们要重新查找IP地址
来进行配置,可能因为是我的网络用的是DHCP
导致一段时间就回动态的改变IP地址
?所以本人的建议还是只在本机开发就一直用localhost
就行了,真机调试的时候再按照这个步骤改回来,不然隔三差五还要查找IP
修改也是挺麻烦的