java获取服务访问路径的问题

一说到java获取服务器访问路径,首先想到了两种方式:

String basePath = request.getScheme() + "://" + request.getServerName() + ":" +
                request.getServerPort() + contextPath + "/";

或者用InetAddress

String basePath=InetAddress.getLocalHost().getHostAddress()

之前做图片上传后回显就是用的这两种方式,basePath+"/图片存储的位置" ,图片显示没问题 。
今天有了一个新需求,我们这边要做一个接口 把接口的url传给门锁厂家,有开门操作会向我们接口推送一条开门数据。我也是用上面的basePath+“我方法的url”。结果开门日志推送不过来。
调试了一把发现上面两种方式获取到的访问路径都是在当前局域网下的访问路径,外网访问不了。无奈 只能把外网的url写死到配置文件,不能通过java代码动态获取,这个一定要注意。总之java获取不到服务器的外网ip。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章