我试图调用我的 nodejs 服务器并显示来自 angularjs 应用程序的结果。我一直在关注一个示例,但是当我更改我的代码的示例代码时,它总是调用错误回调。我感觉我的服务器有问题,但我无法让它工作,它的 nodejs 没有 express 或其他库,所有其他答案都涉及使用 express。如何在不使用 express 的情况下使其工作?
angularjs中的代码,我在其中调用服务器:
app.controller('Main', function ($scope, $http) {
$scope.init = function() {
//var api = 'http://api.trakt.tv/calendar/premieres.json/7c989229f2fa626832e7576eb59820e9/20131103/30/?callback=JSON_CALLBACK';
$http.jsonp('http://localhost:8888/selectAllLocations?callback=JSON_CALLBACK').success(function(data) {
console.log(data);
}).error(function(error) {
console.log('My error: ' + error);
});
};
});
如果我使用 var api 中的值,结果是好的并且成功被调用,而不是我的。
这是我的 nodejs 服务器中的代码。
var result = sequelize.query(query, null, options, parameters)
.success(function (rows) {
if (type == 'select') {
response.writeHead(200, { "Content-Type": "application/json" });
response.write(JSON.stringify(rows));
response.end();
} else if (type == 'modify') {
response.writeHead(200, { "Content-Type": "text/html" });
response.write("Query was successful");
response.end();
}
}
).error(function (e) {
console.log("An error occured: ", e);
response.writeHead(404, { "Content-Type": "text/html" });
response.write("There was an error man, shits on fire yo ---> " + e);
response.end();
}
);
我很确定我必须将 json 结果包装在一个函数中,但我不知道如何,我什至不知道函数名称,因为这是我在服务器中得到的全部内容:
路径:/selectAllLocations 参数:{"callback":"angular.callbacks._0"}
我知道我返回的是纯 json,我可以在我的回复中看到它在 chrome 中,所以,有一些东西阻止它调用成功函数。有人可以指出我正确的方向吗?