最近在研究php寫接口,當我寫完一個接口時,在本地web訪問可以正常收到數據,但是在app連接時死活不通,最後發現是訪問的地址不對,現在做個總結以便後續查看。
本地PHP接口連接
在網頁輸入 http://locallhost/index/index 訪問php編寫的index控制器下的index方法
如果使用mamp之類的集成工具,並把locallhost映射成了例如 test.com這樣的網址那麼訪問地址是 http://test.com/index/index
模擬器訪問本機接口
安卓模擬器本機地址爲10.0.2.2 對應與電腦的127.0.0.1,一般項目在創建時,本機默認配置都是127.0.0.1,此時在模擬器訪問時要在模擬器地址欄換成http://10.0.2.2/index/index
真機訪問電腦本機接口
真機訪問時要換成電腦所在ip地址,要滿足以下幾個條件
- 真機要和電腦在同一個局域網,例如mac和手機連接同一個wifi,或者mac連接手機的熱點
- 打開防火牆(我測試的時候先打開了防火牆,後來關閉了照樣可以連接,這裏如果大家沒有打開防火牆就能連接,那麼恭喜你可以省事了)
查找本機ip mac 在控制檯輸入ifconfig | grep “inet”|grep -v 127.0.0.1
windows 在控制檯輸入 ipconfig查找,例如找到本機ip爲 192.168.3.122,那麼真機訪問的地址是 http://192.168.3.122/index/index