javascript - angularJs如何设置$resource POST方法的query string?

 刘诗宪668964 发布于 2022-11-12 19:05

问题

使用angular的 $resource 与RESTFul接口进行交互,现在要发送POST请求,主要的代码如下:

// $resource定义代码
myServices.factory('Apps', ['$resource',
    function($resource) {
        return $resource(
            null,
            {AppId: "@AppId"},
            {
                advancedSet: {
                    url: '/api/apps/advancedSettings/:AppId',
                    isArray: false,
                    method: 'POST',
                    params: {
                      bid: '@bid'
                    }
                }
            }
        );
    }
]);
// 调用代码,这里的$scope.aid和$scopebid都是有效值
var updateData = {
  AppId: $scope.aid,
  bid: $scope.bid
};

Apps.advancedSet(updateData).$promise.then(function(req, res) {
   console.log('post req res');
});

我要将数据通过post请求发送到网站下的 /api/apps/advancedSettings/123?bid=666
试了这样,结果却是发送到/api/apps/advancedSettings/123?了。
请问怎么样调用才能得到我要的结果?

2 个回答
  • 问题出在

    params: {
      bid: '@bid'
    }

    试试这样

    // $resource定义代码
    myServices.factory('Apps', ['$resource',
        function($resource) {
            return $resource(
               '/api/apps/advancedSettings/:AppId',
                {
                    AppId: "@AppId",
                    bid: '@bid'
                },
                {
                    advancedSet: {
                        isArray: false,
                        method: 'POST',
                    }
                },
            );
        }
    ]);

    补充了解:
    http://blog.csdn.net/he90227/...

    2022-11-12 19:05 回答
  • /api/apps/advancedSettings/123?bid=666后面的?bid=666是查询参数,一般通过使用GET方法添加查询参数就可以了,你可以试试使用GET方法,增加一个查询参数。

    2022-11-12 19:05 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有