CakePHP REST+;AngularJS-如何在JSON中发送拒绝访问的响应?

CakePHP REST+;AngularJS-如何在JSON中发送拒绝访问的响应?,php,json,angularjs,rest,cakephp,Php,Json,Angularjs,Rest,Cakephp,我是CakePHP新手,正在使用版本2.7.5 我按照教程创建了一个基本的REST服务 我现在使用基本的auth教程保护它们 现在,我在这个REST服务上有一个AngularJS应用程序,但需要一种方法来提示用户登录,或者说他们的帐户无法访问该资源 现在,当发出REST调用时,他们没有访问权限,响应是将HTML页面重定向到“/”或登录。但我希望JSON中的响应带有一条消息,上面写着“拒绝访问”或“会话已启动,请登录…”等等 我知道这是cakephp中的flash变量,但我使用的是AngularJ

我是CakePHP新手,正在使用版本2.7.5

我按照教程创建了一个基本的REST服务

我现在使用基本的auth教程保护它们

现在,我在这个REST服务上有一个AngularJS应用程序,但需要一种方法来提示用户登录,或者说他们的帐户无法访问该资源

现在,当发出REST调用时,他们没有访问权限,响应是将HTML页面重定向到“/”或登录。但我希望JSON中的响应带有一条消息,上面写着“拒绝访问”或“会话已启动,请登录…”等等

我知道这是cakephp中的flash变量,但我使用的是AngularJS


因此,我的问题是,如果用户在登录后无法访问某个rest url,我应该在哪里用cakephp编写代码来发送json响应而不是HTML页面重定向?

您只需使用正确的状态代码将响应头返回到请求(401)

您可以捕获请求方法中的错误代码,例如ajax请求

.error(status){
    switch(status.code)
    {
        case 401:
            //Unauthorized
        break;
    }
}

您只需使用正确的状态代码(401)将响应头返回给请求即可

您可以捕获请求方法中的错误代码,例如ajax请求

.error(status){
    switch(status.code)
    {
        case 401:
            //Unauthorized
        break;
    }
}