2016-09-15 93 views
2

我正在使用React Native開發一個簡單的應用程序。我正在Genymotion Android模擬器上測試它。我創建了本地Web服務器來收聽請求,它運行在http://localhost:8082/API/。 我已經測試過API,並且正在工作。然後我從index.android.js發出一個獲取請求。React Native提取返回網絡請求失敗

這裏是從陣營本地代碼的API請求示例:

var api = { getUser(){ 
     var url = "http://127.0.0.1:8082/API/"; 
     return fetch(url) 
      .then((res) => res.json()) 
      .catch(
       (error)=>{ 
        console.log('error' + error.message); 
        throw error; 
       } 
      ); 
    } 
} 
module.exports = api; 

這裏是從API服務器的代碼(建有flightPHP)

Flight::route('GET /',function(){ 
try{ 
$db = new PDO('mysql:host=localhost;port=3307;dbname=testapp', 'root',''); 
    $stmt = $db->prepare("SELECT * FROM user LIMIT 1"); 
    $stmt->execute(); 
    header('Content-type: application/json'); 
    echo json_encode($stmt->fetchAll(PDO::FETCH_ASSOC)); 

    $db = null; 

}catch(Pdoexception $e){ 
    echo $e->getMessage(); 
} 
}); 

執行此調用後,我收到網絡請求失敗( )。它似乎android模擬器不承認的API網址。任何建議?謝謝

回答

2

我已經解決了。只需在React Code中更改API url var url = "http://127.0.0.1:8082/API/即可。到var url = "http://local-ip-address:8082/API/ 檢查你的本地ip只是從命令行運行ipconfig/cmd

相關問題