0

AngularJS に $http POST 呼び出しがありますが、要求が悪い場合はサーバーの応答が表示されません。

myFactory.create = function(formData) {
  deferred = $q.defer()
  $http({method: 'POST', url: url, responseType: 'json', data: formData})
    .then(function(data) {
      deferred.resolve(data);
    }, function(response, status, headers, config) {
      deferred.reject(response);
  });

  return deferred.promise;
};

間違ったデータを送信すると、API は 400 - Bad Request で応答します。Chrome デベロッパー ツールで応答を見ると、「垂直方向が正しくありません」というプレーン テキスト メッセージがあります。ただし、そのメッセージは $http エラー コールバックの応答にはありません。

他のすべて (ステータス、ヘッダー、構成) を取得できますが、応答データが null です。

成功した POST は正しく処理されるので、関数が一般的に機能することがわかります。

Chrome で応答を表示できるのに、$http 経由でアクセスできない理由は何ですか?

4

1 に答える 1