The code in the callbacks executes "outside of Angular's world", which means the $digest loop will not be triggered and changes will not be reflected in the DOM.
You need to use $apply:
$apply() is used to execute an expression in angular from outside of the angular framework. (For example from browser DOM events, setTimeout, XHR or third party libraries). Because we are calling into the angular framework we need to perform proper scope life cycle of exception handling, executing watches.
Inject $rootScope
in your service and for example:
success: function(results) {
$rootScope.$apply(function () {
console.log(results[0].get("title"));
for (var i = 0; i < results.length; i++)
{
blogs.push(
{
title : results[i].get("title"),
post : results[i].get("post")
});
}
console.log(blogs);
});
},