gpt4 book ai didi

javascript - 在 ionic services.js 文件中对第三方 API 进行 ajax 调用?

转载 作者:行者123 更新时间:2023-11-27 23:22:26 24 4
gpt4 key购买 nike

今天开始使用 ionic,遇到了一个小问题。services.js 文件有一条注释//此处可能使用返回 JSON 数组的资源

我想对 API 进行 ajax 调用,但我不知道如何在 services.js 文件中声明自定义资源。我将从该调用中收到一个 JSON 数组,并将使用列表。

问题:如何将自定义变量声明为列表,以对第三方 API 进行 ajax 调用?

angular.module('starter.services', [])

.factory('Chats', function() {
// Might use a resource here that returns a JSON array
var popularURL = 'SOME_API_RUL';
var xhttp = new XMLHttpRequest();
xhttp.onreadystatechange = function() {
if (xhttp.readyState == 4 && xhttp.status == 200) {
var chats = xhttp.responseText;
}
};
xhttp.open("GET", popularURL, true);
xhttp.send();

return {
all: function() {
return chats;
},
remove: function(chat) {
chats.splice(chats.indexOf(chat), 1);
},
get: function(chatId) {
for (var i = 0; i < chats.length; i++) {
if (chats[i].id === parseInt(chatId)) {
return chats[i];
}
}
return null;
}
};

聊天列表永远不会被填充。如何在 ionic services.js 文件中正确进行 ajax 调用。

谢谢!

最佳答案

你可以这样做:

angular.module('starter.services', [])

.factory('Chats', function($http) {

var API_URL = 'https://api.herokuapp.com';

return {
all: function() {
return $http.get(API_URL + '/chats');
}
};
});

在 Controller 中:

Chats.all().then(function(chats){
$scope.chats = chats;
})

您可以查看$http在文档中

关于javascript - 在 ionic services.js 文件中对第三方 API 进行 ajax 调用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35276671/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com