安らかな潜水への深い潜水
7421 ワード
APIフレームワークは何ですか?
APIはアプリケーションプログラミングインターフェイスです.アプリケーションのフォーマットデータを返すAPIの仕事です.APIはクライアントからユーザデータを受け取り、それをサーバに送り、サーバからの応答を聞き、それをユーザに返送する.開発者はフロントエンドとバックエンドでコールを書き、リソースを送受信する.通常、これはプログラミング言語JSONを使用して行われます.開発者とアプリケーションの読みやすくするためです.APIはリテラルオブジェクトまたはリソースで、アプリケーションのクライアント側とサーバー側の関係を形成する戻り値を返します.
RESTfulは何を意味しますか?
RESTは、それがWebアプリケーションに安定性を提供する表現状態転送を表します.残りのルールのセットを使用して簡単に使用し、アプリケーションを読む設計するために開発者に従うことです.休息は建築様式であり、安らかはそれの解釈である.あなたのバックエンドサーバがREST APIを持っていて、クライアント側のリクエストをウェブサイト/アプリケーションからこのAPIにするなら、クライアントはmlsdev.com .
制約
REST APIと非REST APIの違いは、その構造スタイルです.RESTfulフルアーキテクチャの制約は、任意のAPIがRESTfulと見なされるために必要です.6つの制約は以下の通りです.
ユニフォームインターフェイス-このキー制約は、リソースがAPIの消費者にアクセスできるシステムです.残りのAPIの設計には、以下の4つの基本原則があります.
リソースベース:URIによって個々のリソースを定義します.
ユーザの表現によるリソースの操作:ユーザが許可を持っている場合、サーバ上のリソースを更新または削除することができます.
自己記述メッセージ:メッセージを処理するために必要なすべての情報は、その中に含まれています.
アプリケーション状態のエンジン(HiEOAS)としてのHypermedia:リソースはボディー、パラメタ、ヘッダーと要求URIでクライアントを通して州を届けることによってその表現ですべてを含まなければなりません.
stateless -クライアントとサーバの間の相互作用はステートレスでなければなりません.クライアントがユーザーのアプリケーションのセッション状態を保持している間、サーバーがクライアントから要求されたすべての要求を処理することを意味します.クライアントからサーバへの要求は、要求を処理するために必要な情報を含まなければなりません.
キャッシュ可能-アプリケーションのパフォーマンスを向上させるためにクライアントのサーバーの相互作用の量を減らすことができる必要があります.
クライアントサーバ-それぞれが依存関係を別々に自由に発展させることができるバックエンド懸念からのフロントエンド懸念の分離.
層のシステム-接続のいずれかの間の通信に混乱なしで階層化されたサーバーに接続するためのクライアントの能力を持っている必要があります.
コードオンデマンド-オプションのAPIは、そのようなクライアント側スクリプトの実行可能コードを返すことができます.
HTTPメソッド
HTTPメソッドは、呼び出しで実行される操作です.Postmanは、要求とその応答を表示するための素晴らしいツールです.一般に、データの更新、削除、送信、受信のためのコールメソッドは以下の通りです.
取得またはデータを読む
const express = require("express");
const bodyParser = require("body-parser");
const app = express();
app.use(bodyParser.json());
// listen for GET request
const getLocation = (req, res) => {
res.send("I'm home!");
};
app.get("/", getLocation);
POST -新しいデータを作成する
// listen for POST request
app.post("/addNew", (req, res)=>{
// deconstruct the data from the body of the request
const { data } = req.body;
res.send(`Added: ${data}`)
});
削除-データの削除または削除
// listen for DELETE request
app.delete("/user", (req, res)=>{
res.send(`User has been deleted: ${req.body.data}`)
})
結論
最初の安らかなAPIはとらえどころのないかもしれませんが、完璧な練習をコーディングのすべてとして、この概念の偉大な理解を開発するあなたの方法になります.私はこのブログは有用なリソースであることを証明願っています.あなたが読んで、常にハッピーコーディングとしてありがとうございます!
クレジット
Reference
この問題について(安らかな潜水への深い潜水), 我々は、より多くの情報をここで見つけました https://dev.to/jessadaggs/a-deep-dive-into-restful-apis-5aahテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol