FuelPHPのRestコントローラでBackbone.jsからPOSTのデータを受け取る方法

[`livedoor` not found]
[`yahoo` not found]
このエントリーを Google ブックマーク に追加
[`google_buzz` not found]
Facebook にシェア
LinkedIn にシェア
[`evernote` not found]

FuelPHPのRestコントローラでBackbone.jsからPOSTのデータを受け取る方法今頃「Backbone.jsアプリケーション開発ガイド」を
写経してみているのですが、チュートリアル2
「ライブラリ(RESTを使ったBackbone.jsアプリケーション)」
ではまったのでメモ。

バックエンドをFuelPHPのRestコントローラで
記述していたのですが、Backbone側でcollection.create(model.save)した
際に$_POSTが空っぽでデータが受け取れなかった。

調べてみると同様の症状を発見。

Backbone.emulateJSON = true;

上記を記述すればバックエンド側で以下のように取得できるようになった。

$model = json_decode(Input::post('model'));

Backbone.jsには以下のように書いてありました。

// Turn on `emulateJSON` to support legacy servers that can't deal with direct
// `application/json` requests ... will encode the body as
// `application/x-www-form-urlencoded` instead and will send the model in a
// form param named `model`.
Backbone.emulateJSON = false;

■参考URL
Backbone.js Model.save()によるPOSTデータをPHPで読み込む
FuelPHP application with Backbone.js model.save()
Backbone.SyncでSAStrutsにFormをPOSTする方法
Backbone.jsを使ってみた


コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です