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。

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