2017-01-16 6 views
0

私はAPIにjsonの配列をポストしている単純なアプリケーションを持っています。私は正常に動作しているいくつかの他の投稿があります。角1ポストで空のペイロードを送信

私がネットワークトラフィックを調査したとき、POSTがペイロードに空のアレイを送信していることがわかりました。

リクエストが行われたときに変数にデータがありますが、これを数回確認しました。

要求:

function postDemo(dp) { 
      var x = dp; 
      return $q(function (resolve, reject) { 
       $http({ 
        method: 'POST', 
        url: BASE + 'acl/newDemo', 
        data: x, 
        crossDomain: true, 
        contentType: 'application/json', 
        xhrFields: { 
         withCredentials: true 
        } 

       }) 
        .success(function (data, status) { 

         resolve(function() { 
          resolve(true); 
         }); 
        }) 
        .error(function (data, status) { 
         reject(false); 
        }); 
      }); 

     } 

VAR xはアレイを含み、先ほど述べたように取り込まれます。問題はこの時点から来ているようです。 APIは正しく動作しており、実際には何も送信されないため、データを読み取ることができません。

私はコンテンツタイプを変更しようとしましたが、違いはありません。

配列は$ scopeからのもので、POSTが行われたときにx変数に含まれるすべての値を持つ複雑なオブジェクトを出力します。

これ

は、それが掲載される前にブラウザが配列値として示しているものです。

X = [ billingAddress:オブジェクト、 billingDetails:オブジェクト、 会社:オブジェクト、 importCompany:オブジェクト、 importProfile:配列[0] ]

とペイロードのスクリーンショット:

答えて

0

1)$ httpは既に$ q彼女を使用する必要はありません。

2)このsyntaxeを使用します。$ HTTP(。)その後、(成功事例の()、エラー()):

https://docs.angularjs.org/api/ng/service/ $ HTTP

function postDemo(dp) { 
    return $http({ 
      method: 'POST', 
      url: BASE + 'acl/newDemo', 
      data: dp, 
      crossDomain: true, 
      contentType: 'application/json', 
      xhrFields: { 
       withCredentials: true 
      } 

     }).then(function successCallback(response) { 
      return true ; 
     }, function errorCallback(response) { 
      return false ; 
     }); 
} 
+0

私はポインタに感謝が、それは問題では変更されません。または任意のソリューションを提供します。 –

関連する問題