AngularJs: el método devuelve sincrónicamente cuando llama a $ http o $ resource internamente

¿Hay alguna forma de esperar una promesa para que pueda obtener el resultado real y devolverla en lugar de devolver la promesa? Estoy pensando en algo similar a cómo la palabra clave a esperar de C # funciona con las tareas.

Este es un ejemplo de por qué me gustaría tener un método como canAccess () que devuelva verdadero o falso en lugar de una promesa para que se pueda usar en una declaración if. El método canAccess () haría una llamada AJAX usando $ http o $ resource y luego de alguna manera esperaría que la promesa se resolviera.

El se vería algo como esto:

$scope.canAccess = function(page) {
    var resource = $resource('/api/access/:page');
    var result = resource.get({page: page});

    // how to await this and not return the promise but the real value
    return result.canAccess;
}

¿Hay alguna forma de hacer esto?

Gracias.

Respuestas a la pregunta(5)

Su respuesta a la pregunta