Could you please check why after successfull login your sample make two calls to the rest server ?
in this trace you can notice these calls to the network
GET http://localhost:8080/angularjs-grails-sample/api/status
GET http://localhost:8080/angularjs-grails-sample/api/books.json
GET http://localhost:8080/angularjs-grails-sample/api/books.json
regards
GET http://localhost:8080/angularjs-grails-sample/api/status
200 OK 215ms
angular.js (line 9312)
HeadersResponseJSON
{"user":{"class":"com.hantsylabs.grails.example.security.Person","id":1,"accountExpired":false,"accountLocked":false,"enabled":true,"password":"$2a$10$J1jQcEQ21jgwOAqVFfzhy.jpLZZLPyGnz3oYL7UDb6Pnj6OCgdUFy","passwordExpired":false,"username":"test"}}
dont intercept...
app.js (line 68)
app.js (line 145)
GET http://localhost:8080/angularjs-grails-sample/api/books.json
200 OK 250ms
angular.js (line 9312)
HeadersResponseJSON
[{"class":"com.hantsylabs.grails.example.domain.Book","id":1,"author":"Gavin King","price":99.0,"title":"Java Persistence with Hibernate"},{"class":"com.hantsylabs.grails.example.domain.Book","id":2,"author":"Matt Raible","price":29.0,"title":"Spring Live"}]
GET http://localhost:8080/angularjs-grails-sample/api/books.json
200 OK
253ms
angular.js (line 9312)
HeadersResponseJSON
[{"class":"com.hantsylabs.grails.example.domain.Book","id":1,"author":"Gavin King","price":99.0,"title":"Java Persistence with Hibernate"},{"class":"com.hantsylabs.grails.example.domain.Book","id":2,"author":"Matt Raible","price":29.0,"title":"Spring Live"}]