搜尋

首頁  >  問答  >  主體

angular.js - angularjs每次發送$http都把所有資料當作一個key,value為空發出去


chrome瀏覽器中的傳送資料如上圖,注意最後那個冒號,冒號前面是key,後面value是空的。
我的發送代碼如下:

$scope.loginJump = function(info){
    $http({
        url:'http://192.168.1.54:8080/retailer/user/auth',
        method:"POST",
        headers: {
            'Content-Type': 'application/x-www-form-urlencoded'
        },
        data: {
            userName: info.staffID,
            userPass: info.password,
            checkCode: info.security
        },
        success: function(data){
            alert(data);
        },
        error: function(err){
            alert(err);
        }
    });
};
某草草某草草2743 天前523

全部回覆(1)我來回復

  • 漂亮男人

    漂亮男人2017-05-15 16:53:56

    直接放在data裡會把參數以json的形式直接放在body發出去,而你的headers裡面又設定成了content-type是application/x-www-form-urlencoded,所以就會被認為是formdata ,但其實整個都當一個key了。

    當然直接用json把資料post上去其實就沒問題了,如果你一定要post form data的話,應該要自己拼出來或是用jquery的$.param之類的方法來做。

    回覆
    0
  • 取消回覆