AngularJS post请求无法正确获取服务器响应

时间:2014-02-12 13:54:33

标签: javascript angularjs cordova steroids

我正在使用AppGyver Steroids和AngularJS开发混合移动应用程序。在这个移动应用程序中,我需要使用我开发的另一个项目的RESTful API;这是我从移动应用程序发送的示例请求:

var data = {
    'email': $scope.userEmail,
    'password': $scope.userPassword
}

$http.post('http://example.com/api-auth-token/?format=json', data)
    .success(function(data, status, headers, config) {
        alert(data);
        $location.path('/profile');
    })
    .error(function(data, status, headers, config) {
        // show error details
        navigator.notification.alert(
            'Authentication failed. (' + status + ')',
            null,
            'Error',
            'Okay'
        );
    });

此请求非常好地到达服务器,并生成状态代码为200的有效响应...至少在我检查服务器日志时就是这种情况。移动应用程序显示一个消息框,提示“身份验证失败。 (404)'与服务器日志的内容相矛盾。

编辑:我还开发了一个使用这些API的原生iOS应用程序,它没有任何问题。

1 个答案:

答案 0 :(得分:0)

事实证明,服务器生成的响应中缺少Access-Control-Allow-Origin标头,这是罪魁祸首。