如何在$ resource操作中阻止GET请求中的AngularJS排序参数?

时间:2016-02-04 12:03:07

标签: javascript angularjs ngresource

我的资源是:

angular.module('myApp.services')
    .factory('MyResource', ['$resource', function ($resource) {
        return $resource('http://example.org', {}, {});
    }]);

我如何做GET请求:

MyResource.get({z: 5, a: 4});

AngularJS生成的URL是:

  

http://example.org/?a=4&z=5

我希望网址是:

  

http://example.org/?z=5&a=4

任何解决方案?

P.S。我认为使用拦截器可以解决问题,但是没有拦截请求的方法,但是有一些名为responseresponseError的可选方法。这是因为$ resource和$ http的拦截器是不同的。请参阅:$resource$http

1 个答案:

答案 0 :(得分:4)

你可以试试这个。我只是喜欢这个服务电话

var app=angular.module("Test",[]);

app.service('somename', function ($http) {

this.GetData = function (z,a) {
    return $http.get('http://example.org/?z='+z+'&a='+a);
}
});

app.controller("demo",function($scope,somename){

var d=somename.GetData(4,5);

});