0

$http実装全体のコードは次のとおりです。

    $http({
        url: jsurl('profile.login'),
        method: 'POST',
        data: $.param({
            username: $scope.username,
            password: $scope.password,
            csrfmiddlewaretoken: $.cookie('csrftoken')
        }),
        headers: {'Content-Type': 'application/x-www-form-urlencoded'}
    }).
    success(function (data) {
        $scope.success = true;
    }).
    error(function (data) {
        $scope.success = false;
        $scope.errors = data.errors;
    });

問題は、次の応答を返すにもかかわらず、datainが文字列であることです。$http.error

Content-Type:application/json; charset=UTF-8
Body: {"errors":{"username":{"messages":[["Pleaseenteryourusername."]]},"password":{"messages":[["Pleaseenterpassword."]]}},"success":false}

jQueryでは通常使用します$.parseJSON()が、Angularコード内でjQueryコードを使用しない方法について聞いています(これがなぜなのかまだ理解していません)ので、エラー応答を解析するためのよりAngularの標準的な方法があるかどうか疑問に思っていますJSON。

4

1 に答える 1

1

はい、angular.fromJsonユーティリティ機能があります。http://docs.angularjs.org/api/angular.fromJsonを参照してください

于 2013-03-28T18:40:32.853 に答える