


Restful API エラー プロンプトの戻り値 PHP での実装アイデアrestful API の例restful インターフェイスジャージrestful
RESTful アーキテクチャ は、人気のあるインターネット ソフトウェア アーキテクチャであり、明確な構造を持ち、標準に準拠しており、理解しやすく、拡張も容易です。
REST は Representational State Transfer の略語で、「プレゼンテーション層の状態変換」と訳されます。プレゼンテーション層は実際にはリソースなので、「リソースの状態の変換」として理解できます。
Web アプリケーション上のあらゆるエンティティは、URI (Uniform Resource Locator) によって指定されるリソースと見なすことができます。
まえがき
Weibo であっても、淘宝網であっても、独自のエラー戻り値の形式仕様とエラー コードの説明があり、携帯電話で使いやすいだけでなく、人々に明確で高級感を与えます。 。問題が発生した場合、まず親会社に相談する必要があります。大企業の規範は、私たちにとって親会社です。この目的のために、私はタオバオのエラー戻り値の形式を模倣し、Weibo エラー コードで設定された標準に基づいて独自のエラー コードをカスタマイズし、Restful API でテストしました。以下に実装アイデアとテスト結果を紹介します。
実装アイデア
このようなエラー戻り値を実装するために抽象ファクトリパターンを使用します。このパターンを選択したのは、このパターンが一連の関連オブジェクトまたは相互依存オブジェクトを作成するためのインターフェイスを提供しており、これが私のニーズに非常に近いからです。
コード分析
1. このパス共通ヒントに従って、エラー プロンプト プログラム ファイルを保存するための新しいエラー フォルダーを作成しました。このフォルダーには主に次のファイルが含まれています:
2. Hint.php エントリ ファイル。抽象クラスを定義し、その中にメソッドを 1 つだけ記述します。
interface Hint { function Error($_errors,$code); }
3. Template.php はヒントインターフェイスを実装します。エラー戻り値の形式はここで定義されます。
class Template implements Hint{ function Error($_errors,$code) { if (empty($_errors)) { print_r(json_encode([])); } else { $errors['error']['name'] = 'Not Found'; $errors['error']['message'] = $_errors; $errors['error']['error_code'] = $code; print_r(json_encode($errors)); } } }
4. createMsg.php 別の createMsg 抽象クラスを作成します。抽象オブジェクトの作成をインターフェイスに組み込みます。
interface createMsg { function Msg(); }
5. FactoryMsg クラスを使用して createMsg インターフェイスを実装します。インスタンス化されたテンプレートを返します。
class FactoryMsg implements createMsg{ function Msg() { return new Template; } }
6. ErrorMsg.php はテンプレートの Error メソッドにパラメータを渡します。
class ErrorMsg { // 抽象工厂里的静态方法 public static function Info($_errors) { $Factory = new FactoryMsg; $result = strstr($_errors,Yii::t('yii','Not exist')); //数据不存在 20001 $result1 = strstr($_errors,Yii::t('yii','Null')); //参数不能为空 20002 $result2 = strstr($_errors,Yii::t('yii','Fail')); //新增、更新、删除失败 20003 $result3 = strstr($_errors,Yii::t('yii','Not right')); //XX不正确 20004 $result4 = strstr($_errors,Yii::t('yii','Robc')); //XX无权限 20005 //数据不存在 20001 if(!empty($result)){ $M = $Factory->Msg(); $M->Error($_errors,'20001');die; } //参数不能为空 20002 if(!empty($result1)){ $M = $Factory->Msg(); $M->Error($_errors,'20002');die; } //新增、更新、删除失败 20003 if(!empty($result2)){ $M = $Factory->Msg(); $M->Error($_errors,'20003');die; } //XX不正确 20004 if(!empty($result3)){ $M = $Factory->Msg(); $M->Error($_errors,'20004');die; } //XX无权限 20005 if(!empty($result4)){ $M = $Factory->Msg(); $M->Error($_errors,'20005');die; } //默认类型 21000 $M = $Factory->Msg(); $M->Error($_errors,'21000'); } }
7.呼び出し方法。
えー
8. テスト結果。
りー
完了。私は実装プロセス全体で言語パックの形式を使用します。これにより、後の多言語切り替えが容易になります。
FAQ
1. この種の文字列あいまい検索の使用は非常に一般的であり、特定のエラー タイプに対応する特定のコードを返すという要件を満たすことはできません。より良い提案がございましたら、ぜひご提案ください。
use common\hint\error\ErrorMsg; ErrorMsg::Info(Yii::t('yii','failure'));
2. 実装プロセスでは、将来の多言語切り替えの問題は考慮されず、プロンプトは従来の方法で直接送信されました。例: ErrorMsg::Info("Operation failed"); この方法では、複数言語の切り替えを実現できません。言語パックを使用してパラメーターを渡すことをお勧めします。
上記は、Restful コンテンツを含む、PHP での Restful API エラー プロンプトの戻り値の実装アイデアを紹介したもので、PHP チュートリアルに興味のある友人に役立つことを願っています。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック

Flask-RESTful と Swagger: Python Web アプリケーションで RESTful API を構築するためのベスト プラクティス (パート 2) 前回の記事では、Flask-RESTful と Swagger を使用して RESTful API を構築するためのベスト プラクティスについて説明しました。 Flask-RESTful フレームワークの基本を紹介し、Swagger を使用して RESTful API のドキュメントを構築する方法を示しました。本

Laravel による RESTful API 開発: 最新の Web サービスの構築 インターネットの急速な発展に伴い、Web サービスの需要は日に日に増加しています。最新の Web サービス アーキテクチャとして、RESTfulAPI は軽量で柔軟性があり、拡張が容易であるため、Web 開発で広く使用されています。この記事では、Laravel フレームワークを使用して最新の RESTful API を構築する方法を紹介します。 LaravelはPHP言語です

Django は、RESTful API を簡単に構築できる Web フレームワークです。 RESTfulAPI は、HTTP プロトコルを通じてアクセスできる Web ベースのアーキテクチャです。この記事では、DjangoREST フレームワークを使用して開発プロセスを簡素化する方法を含め、Django を使用して RESTful API を構築する方法を紹介します。 Django をインストールする まず、Django をローカルにインストールする必要があります。 pip を使用して Django をインストールできます。

1. RESTful の概要 REST (RepresentationalStateTransfer) スタイルは、Web アプリケーションの可読性、拡張性、保守性を高めるために、いくつかの設計原則に従うリソース指向の Web アプリケーション設計スタイルです。 RESTful スタイルの各側面を詳しく説明します。 リソース識別子: RESTful スタイルでは、各リソースには一意の識別子 (通常は URL (UniformResourceLocator)) があります。 URL は、クライアントが HTTP プロトコルを使用してリソースにアクセスできるように、リソースの場所を識別するために使用されます。たとえば、単純な URL は http のようになります。

インターネットの発展と普及に伴い、Web アプリケーションやモバイル アプリケーションがますます一般的になってきています。これらのアプリケーションはバックエンド サーバーと通信してデータを取得または送信する必要があります。以前は、従来の通信方法は SOAP (Simple Object Access Protocol) または XML-RPC (XML Remote Procedure Call) を使用することでした。しかし、時間が経つにつれて、これらのプロトコルは煩雑で複雑すぎると考えられました。最新のアプリケーションでは、通信するために、より軽量で簡単な API が必要です。 RESTfulAPI(プレゼンテーション層状態変換AP)

情報技術における継続的な革新の現在の環境では、RESTful アーキテクチャは一般的に使用されるさまざまな WebAPI アプリケーションで人気があり、新たなサービス開発トレンドとなっています。 Beego フレームワークは、Golang の高性能で拡張が容易な Web フレームワークであり、効率性、使いやすさ、柔軟性の利点により、RESTful サービスの開発に広く使用されています。以下は、Beego で RESTful サービスを開発するためのベスト プラクティスの観点から、開発者向けの参考情報を提供します。 1. RESTでのルーティング設計

RESTfulAPI は、現在の Web アーキテクチャで一般的に使用されている API 設計スタイルであり、その設計コンセプトは、Web リソースの表現と対話を完了するための HTTP プロトコルの標準メソッドに基づいています。実装プロセス中、RESTful API は、キャッシュ可能性、サーバーとクライアントの分離、ステートレス性などを含む一連のルールと制約に従います。これらのルールにより、API の保守性、スケーラビリティ、セキュリティ、使いやすさが保証されます。次に、この記事ではRESTfulAPIの設計と実装について詳しく紹介します。

Java を使用して RESTful ベースの API を開発する方法。RESTful は HTTP プロトコルに基づくアーキテクチャ スタイルで、HTTP プロトコルの GET、POST、PUT、DELETE などのメソッドを使用してリソースを操作します。 Java 開発では、SpringMVC、Jersey などのいくつかのフレームワークを使用して、RESTful API の開発プロセスを簡素化できます。この記事では、Java を使用して RESTful ベースのアプリケーションを開発する方法を詳しく紹介します。
