Phalconに基づくシンプルなレストAPIフレームワーク

みなさんこんにちは。

そこで、人気のあるPhalconフレームワークに基づいた単純なREST APIを実装する小さな例を提供したいと思います。 致命的な実装ではなく、そのフレームです。 この記事は初心者向けであることをすぐに明確にします。 認識され経験豊富な人々がコンテンツに興味を持つ可能性は低いです。

Phalconは、優れた開発の機会を提供するだけでなく、創造性と優れた製品を作成するための非常に大きな自由を提供します。したがって、この例は非常に単純です。



実際、必要なのは、コントローラーで特定のアクションを作成することだけです。その目的は、必要なデータのセットを返すことですが、ルーティングは特定のアクションの注釈に基づいています。たとえば、

<?php namespace RestApi\Api\Controllers; class IndexController extends RestController { /** * @Get("/get") */ public function getAction() { return ['getAction']; } /** * @Post("/post") */ public function postAction() { $this->setStatusCode(201); return ['postAction']; } /** * @Put("/put") */ public function putAction() { $this->setStatusCode(201); return ['putAction']; } /** * @Delete("/delete") */ public function deleteAction() { return ['deleteAction']; } }
      
      





意味:URI / getはGETリクエストに、/ postはpostに使用可能など。 応答は、コントローラーアクションが返す値のJSON表現を返します。 apiはjson出力形式のみをサポートすることを明確にしますが、RestController :: prepareResponseメソッドを展開するだけで新しい形式を簡単に追加できます。

ルーティングは注釈に基づいて構築され、 ここで見つけることができる多くの形式をサポートします

新しいコントローラーを作成する場合、ベースのRestControllerから継承し、/ config / ruotes.phpに説明を追加する必要があります。

 $router->addModuleResource("api", "RestApi\Api\Controllers\NewController");
      
      





それだけです!

ソースはこちらです。 ご清聴ありがとうございました。厳しく判断しないでください。 実装が誰にとっても役に立たない場合でも、おそらくこの記事はフレームワーク自体への関心を喚起し、本当にクールです。



All Articles