0

以前のカスタム Drupal 6 モジュールは、POST 要求と GET 要求を切り替えます。

if ($_SERVER['REQUEST_METHOD']) {
    case 'POST':
       ...
       break;
    case 'GET':
       ...
       break;
}

このモジュールを Drupal 7 に採用し始めたばかりですが、$_SERVER['REQUEST_METHOD'] は常に GET です。リクエストが POST の場合でも、curl -i -X POST http://myurl.com/mypathなど

いくつかの問題が見つかりましたが、解決策はありません:

$_SERVER['REQUEST_METHOD'] ロジックを RESTServer->handle() の外に公開する https://drupal.org/node/1691638

Services と統合された RESTServer を使用して REST 機能を取得することは可能ですが、オーバーヘッドが非常に大きくなります。

誰かが良い簡単な解決策を持っていますか?

4

1 に答える 1

0

$_GET および $_POST 変数またはその他のクエリ データを使用して、メソッドの検出を試みることができます。

if (!empty($_POST)) {
  // POST
}
else {
  // GET
}

これは、データ/ファイルなしで空の POST クエリの場合を除いて機能します。これを一時的な解決策として使用できます。

于 2013-11-03T06:28:09.903 に答える