2016-05-09 45 views
0

我有一个用golang编写的HTTP服务器,客户端是用AngularJs编写的。客户端将使用用户名/密码向服务器发送POST请求,以尝试注册新帐户。我希望客户根据服务器的回答做些事情。如果具有请求的用户名的用户已经存在,我想留在注册站点,否则我希望客户端将视图更改为其他内容。是否有可能通过Golang服务器向AngularJS发布请求失败?

我有以下代码发布到服务器,但如何告诉客户端请求失败?

$scope.register = function(){ 
    var postBody = JSON.stringify({username:$scope.vm.user.username, password:$scope.vm.user.password}) 

    Registration.save(postBody, function(data){ 
     //on success 
     console.log(data) 
     //$location.path('/bookingsystem') 
    });  
}; 
+0

你可以考虑使用http状态码(https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html),例如'302'用于重定向,'201'用于创建 – ch33hau

回答

0

假设你正在使用$资源创建Registration你可以做

Registration.save(postBody, function(data, responseHeaders){ 
    //on success 
    console.log(data) 
    console.log(responseHeaders) 
    //$location.path('/bookingsystem') 
}, function(httpResponse){ 
    // Handle the error 
    console.log(httpResponse) 
}); 

参见$资源documentation更多的API文档。

+0

我用$资源。我在服务器端添加了ch33hau提到的http状态码,并通过检查状态码在客户端处理它。 –

相关问题