rabbitfoot530's diary

読んだ本と、プログラムに関することのメモです。好きな言語は、C++, Python, Golang, TypeScript。数学・物理・学習理論も好きです。

$resourceによるデータ送信(POST)

 前回は、$resourceによるGETの実装を紹介したが、今回はPOSTの実装の紹介。

angular.module('mockServices', ['ngResource'])
  .factory('mockData', ['$resource',
    function($resource) {
      return $resource("http://example.com:8888/:userid", {
        userid: 99
      }, {
        getMock: {
          method: 'JSONP',
          params: {
            uid: '1',
            callback: 'JSON_CALLBACK'
          },
          isArray: false
        },
        postMock: {
          method: 'POST',
          params: {},
          headers: {
            'Content-Type': 'application/json'
          },
          isArray: false,
        }
      });
    }
  ])

 headerにcontent-typeを指定して、methodにPOSTを指定する。 さてPOSTの場合、どうやってデータを送信するのか気になるところ。GETの場合は、データがサーバ側からやってくるが、POSTの場合は、クライアント側からデータを送信しないといけいない。

 データの送信方法は、下記。

var data = {
  "test": "OKOKOK"
};
mockData.postMock(JSON.stringify(data));

 これでサーバ側には、dataをjson形式で送信できる。