0

Slim3 をル​​ーターとして使用し、PSR-7 リクエストを使用してアプリケーションをリファクタリングしています。いくつかのエントリ ポイントで、外部アプリケーションからの受信 GET および POST HTTP 要求があります。GET と POST はどちらも同じパラメーター名を使用します。古いコードでは、単純$_REQUESTに問題を解決しましたが、スーパーグローバルはもう使用したくありません。

GET リクエストのパラメーターを取得するために、次のコードを使用します。

$parameters = $request->getQueryParams();

POST-Request には、次を使用します。

$parameters = $request->getParsedBody();

問題を解決するための PSR-7 機能はありますか、それともarray_merge()毎回使用する必要がありますか?

4

2 に答える 2

4

Slim の request オブジェクトにはgetParam()getParams()があります。ただし、これらは PSR-7 の一部ではありません。

于 2016-05-10T16:17:40.203 に答える
2

PSR-7 自体には、リクエスト インターフェイスに、要求していることを実行するメソッドがありません。

一部の実装でそれが提供される可能性がありますが、私はそれが奇妙だと思います。

可能であれば、最も簡単な方法は、使用している ServerResponseInterface 実装を、必要なことを行う新しいメソッドで拡張することです。

構成キーをオーバーライドして、独自の要求オブジェクトを提供することでこれSlimを行うことができますrequest

于 2016-05-10T14:53:33.510 に答える