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 経由でアクセスできない理由は何ですか?