注意:我知道在這裏已經多次提出了類似的問題,但是沒有一個建議的解決方案爲我解決問題(或者我可能錯過了正確的解決方案)。無法從Android應用程序訪問本地主機
我有一個Android應用程序,該應用程序應該與REST API進行通信,該應用程序也在本地主機上運行。但是,我無法從設備或模擬器訪問API。這是我曾嘗試網址:
有趣的是,我可以從設備的瀏覽器訪問API,以及也來自仿真器的瀏覽器。
請注意,我的設備連接到相同的WiFi我的筆記本電腦,和我有互聯網的權限在我的應用程序:
<uses-permission android:name="android.permission.INTERNET"/>
我想這個問題可能是由於我使用REST庫發生(排球),但是我仍然無法使用java.net中的標準類訪問API。我從192.168.0.xx獲得404,並從192.168.1.xx和10.0.2.2超時。
我試過其他的東西,例如打開USB綁定,使用不同的端口爲我的API,禁用WiFi和嘗試通過移動數據等,但他們都沒有解決我的問題。
任何想法這裏怎麼了?
如果你得到一個404,那麼你連接到你的服務器。你的服務器不喜歡這個URL。查看您的服務器日誌,以查看您的客戶端請求的URL。 – CommonsWare
這是有價值的反饋,謝謝。事實證明,由於缺少對javax.el-api的依賴關係,因此未在任何地方記錄依賴關係(我正在使用RestEasy並且它是Jetty應用程序),因此在服務器中拋出了ValidationException。我在添加攔截器後發現了這一點。一切工作正常後添加依賴項。 – Egemen