這可能是一個愚蠢的問題,我對NativeScript非常陌生。我有一個示例項目。試圖做一個簡單的獲取請求到本地 api。這是我的本地開發機器上的網站設置爲:使用本地API開發Nativescript應用程序
我想在我的本地API訪問端點,它似乎並沒有什麼回報。但我可以將API端點更改爲不是本地API的東西,有時它會返回東西。
該API是一個Laravel/PHP API,我可以確認它是事實上返回有效的JSON,所以我不認爲API是問題。這是我的文件。
var config = require("../../shared/config");
var fetchModule = require("fetch");
//var http = require("http");
var ObservableArray = require("data/observable-array").ObservableArray;
function GroceryListViewModel(items) {
var viewModel = new ObservableArray(items);
viewModel.load = function() {
// http.getJSON(config.apiUrl + "events").then(function(result) {
// console.log(JSON.stringify(result));
// }, function(error) {
// console.error(JSON.stringify(error));
// });
return fetch(config.apiUrl + "events", {
headers: {
//"Authorization": "Bearer " + config.token
"Content-Type": "application/json"
}
})
.then(handleErrors)
.then(function(response) {
console.log(response);
return response.json();
}).then(function(data) {
console.dump(data);
data.forEach(function(event) {
viewModel.push({
name: event.name,
id: event.id
});
});
});
};
viewModel.empty = function() {
while (viewModel.length) {
viewModel.pop();
}
};
return viewModel;
}
function handleErrors(response) {
if (!response.ok) {
console.log(JSON.stringify(response));
throw Error(response.statusText);
}
return response;
}
module.exports = GroceryListViewModel;
請容易對我,絕對尋求幫助雖然。謝謝大家。
是的。它被正確設置,並指向正確的本地API端點。數據也會返回有效的JSON對象。出於某種原因,這些日誌語句中沒有任何顯示。如果我將其更改爲外部API,如指南中的那樣,它可以正常工作。 – devcflynn
我不確定在我的機器上是否有端口相關的東西。我在Unbuntu 16.04機器上運行LEMP env。 – devcflynn
如果它正在返回數據,那麼一切都應該沒問題。你可以添加你運行時看到的輸出嗎? –