改变angular1.x的ajax默认数据提交类型

存起来方便以后拷贝

关键代码如下:

.config(function($httpProvider) {
//定义配置文件
//转换angular默认的参数提交数据类型
 $httpProvider.defaults.headers.put['Content-Type'] = 'application/x-www-form-urlencoded';
 $httpProvider.defaults.headers.post['Content-Type'] = 'application/x-www-form-urlencoded';
})


//转换发送的参数数据类型
function buildPostParams(params){
        var paramsArray = [];
        Object.keys(params).forEach(function(key){
          //console.log(params[key] instanceof Object);
          if(params[key] instanceof Array){
            params[key].forEach(function(val){
              paramsArray.push(key+'['+params[key].indexOf(val)+']'+'=' + encodeURIComponent(val));
            });
          }else if(params[key] instanceof Object){
            Object.keys(params[key]).forEach(function(keys){
              paramsArray.push(key+'['+keys+']'+'=' + encodeURIComponent(params[key][keys]));
            })
          }else{
            paramsArray.push(key + '=' + encodeURIComponent(params[key]));
          }
          
        })
        params = paramsArray.join("&");
return params;
    }



$scope.getToken=function(){
$scope.user='tjdx';
$scope.psw='abc123';
$scope.type='password';
// $scope.type='authorization_code';
$scope.apiInfo={
 'grant_type': $scope.type,
 'loginname': $scope.user,
 'password': $scope.psw
};
$scope.apiInfo2=buildPostParams($scope.apiInfo);
console.log($scope.apiInfo2);

           $http({
               method: 'POST',
               url: apiUrl2+'/api/oauth2/access_token',
              data:$scope.apiInfo2,
              dataType:'json',
               headers : {'client_id' : clientId}
           }).then(function successCallback(data) {
                   // 请求成功执行代码
                  console.log(data.data.access_token)
               }, function errorCallback() {
                   // 请求失败执行代码
                   console.log('ERROR!')
           });
            

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值