MW211 EXIT

devlog
PHP/RESTAPI的なことをしてみよう
2020年09月26日
jQuery側(JavaScript)の処理(抜粋)。
┌──┬───────────────────────────────────┐
│参照│$.ajax({                                                              │
│    │    url         :'http://xxxx/api',                                   │
│    │    type        :'GET',                                               │
│    │    data        :JSONデータ,                                          │
├──┼───────────────────────────────────┤
│追加│$.ajax({                                                              │
│    │    url         :'http://xxxx/api',                                   │
│    │    type        :'POST',                                              │
│    │    data        :JSONデータ,                                          │
├──┼───────────────────────────────────┤
│変更│$.ajax({                                                              │
│    │    url         :'http://xxxx/api',                                   │
│    │    type        :'PUT',                                               │
│    │    data        :JSONデータ,                                          │
├──┼───────────────────────────────────┤
│削除│$.ajax({                                                              │
│    │    url         :'http://xxxx/api',                                   │
│    │    type        :'DELETE',                                            │
│    │    data        :JSONデータ,                                          │
└──┴───────────────────────────────────┘

PHP側の処理例。
┌──────────────────────────────────────┐
│switch ($_SERVER['REQUEST_METHOD']) {                                       │
│    case 'GET':                                                             │
│        $data = $_GET;                                                      │
│        echo $this->select($data);                                          │
│        break                                                               │
│    case 'POST':                                                            │
│        $data = $_POST;                                                     │
│        $this->insert($data);                                               │
│        break                                                               │
│    case 'PUT':                                                             │
│        parse_str(urldecode(file_get_contents('php://input')), $data);      │
│        $this->update($data);                                               │
│        break                                                               │
│    case 'DELETE':                                                          │
│        parse_str(urldecode(file_get_contents('php://input')), $data);      │
│        $this->delete($data);                                               │
│        break                                                               │
│}                                                                           │
└──────────────────────────────────────┘
PUTメソッドとDELETEメソッドについては専用のシステム定数がないので
「php://input」からひっぱてくる形となる。
分類:PHP