3

私はAngularJSが初めてです。

$http サービス メソッド get/post を使用してモック エンドポイントを呼び出すことにより、AngularJS で mockjax を使用できますか? そうでない場合、$http がエンドポイントを作成して呼び出す方法を提供する方法はありますか?

たとえば、MockService は次のようなものです

$.mockjax({
    url: '/sometest/abc',
    type: 'post',
    responseTime: 2000,
    responseText: {
        LoginSuccessful: true,
        ErrorMessage: "Login Successfuly",
        Token: "P{FsGAgtZT7T"
    }
});

そして、私が作成した DataService は以下のとおりです。

'use strict';

//Data service
angular.module('app').factory('dataService',['$http', function($http){

    var restCall = function (url, type, data, successCallback, errorCallback) {
        $http({
            method: type,
            url: url,
            data: data,
        }).
        success(function (data, status, headers, config) {
            successCallback(data);
        }).
        error(function (data, status, headers, config) {
            errorCallback(data)
        });
    };

    return {
        getTemplate: function (success, error) {
            restCall('/sometest/abc', 'GET', null, success, error);
     }
    };
}]);

そして、コントローラーは以下のとおりです

angular.module('App').controller('mainCtrl', ['$scope', 'trackService', 'dataService',
        function ($scope, TrackService, ds) {

            ds.getTemplate(function (data) {
                //do some calculation
            }, function () {
                console.warn('Something is not right');
            });}]);

これが $http を使用する正しい方法であるか、または何か他のことを行う必要があることを知りたい.

4

1 に答える 1