概要 AngularJSでFormDataをPOSTしたいときがある。 たとえばFileをアップロードするときとか、$httpをそのまま使ってもうまく行かない。 というのも、$httpのpostはデフォルトではContent-typeがapplication/jsonだからだ。 もちろんRequestはjsonにエンコードされる。 なので、適切なContent-typeとエンコードにする必要がある。 FormData? var formData = new FormData(); formData.append('formのnameにあたる部分','内容'); って感じでつかうやつ。 内容の部分はファイルの場合はもちろんファイルになる。 このformDataをそのままpostの第二引数に渡す。 ファイル? input type="file"のchangeイベントを捕まえたり、ドラッグ&ドロ