次のように、スクリプトにデータを送信するために使用されるリクエスト メソッドを確認する必要があります。
switch ($_SERVER['REQUEST_METHOD'])
{
case 'POST':
{
// do something
}
break;
case 'GET':
{
// do something else
}
break;
case 'PUT':
{
// your snippet goes here
}
break;
case 'DELETE':
{
// do something when request method == DELETE
}
break;
}
投稿したコードは、REQUEST_METHOD が PUT または DELETE の場合に使用する必要があるものです。それはまったくハックではありません。
POST 経由でデータを送信するようにバックボーンを構成することもできます。
Backbone.emulateHTTP = true;
バックボーンのマニュアルから:
Backbone のデフォルトの REST/HTTP アプローチをサポートしていないレガシー Web サーバーを使用する場合は、Backbone.emulateHTTP を有効にすることを選択できます。このオプションを設定すると、HTTP POST で PUT および DELETE リクエストを偽装し、X-HTTP-Method-Override ヘッダーに true メソッドを設定します。emulateJSON もオンの場合、true メソッドが追加の _method パラメータとして渡されます。