HTTPリクエストを使用したLaravelの複数のAPI
今日は、Laravel で複数の API を呼び出す方法を皆さんに共有します
クライアントから複数の API (vue、react、js など) を呼び出すことができるようになりました。 Promise.all([...]) を使用すると、複数の Promise
分かった、行きましょう
最初に、プロジェクト Laravel 11 をインストールできます
2 番目は、web.php またはコントローラー、サービスなどで設定できます。
例: web.php ファイルにコードを書き、テストを手伝います
use Illuminate\Support\Facades\Http; use GuzzleHttp\Promise\Utils; use GuzzleHttp\Exception\ConnectException; use Illuminate\Http\Client\Pool; Route::get('multiple-request', function() { $responses = Utils::all([ 'foo' => Http::async()->get('https://jsonplaceholder.typicode.com/todos/1')->then(function ($response) { // you can check data, after then return it return $response; }), 'bar' => Http::async()->get('https://jsonplaceholder.typicode.com/todos/2')->then(function ($response) { // you can check data, after then return it return $response; }), 'baz' => Http::async()->get('https://jsonplaceholder.typicode.com/todos/3')->then(function ($response) { // you can check data, after then return it return $response; }), ])->wait(); // you need check data here $fooOk = $responses['foo']->ok(); $barSuccessful = $responses['bar']->successful(); $connectionFailed = $responses['baz'] instanceof ConnectException; return [ 'foo' => $responses['foo']->ok() ? $responses['foo']->json() : 'Request to foo failed', 'bar' => $responses['bar']->successful() ? $responses['bar']->json() : 'Request to bar failed', 'baz' => $responses['baz']->ok() ? $responses['baz']->json() : 'Request to baz failed', ]; });
URL : http://127.0.0.1/multiple-request をリクエストすると、データが返されます
わかりました。または、 Http::pool を使用して API をリクエストすることもできます
Route::get('multiple-request-using-pool', function() { $responses = Http::pool(fn (Pool $pool) => [ $pool->get('https://jsonplaceholder.typicode.com/todos/1'), $pool->get('https://jsonplaceholder.typicode.com/todos/2'), $pool->get('https://jsonplaceholder.typicode.com/todos/3'), ]); $responses[0]->ok(); $responses[1]->successful(); // Kiểm tra và lấy nội dung từ các phản hồi $data = [ 'todo_1' => $responses[0]->ok() ? $responses[0]->json() : 'Request to todo 1 failed', 'todo_2' => $responses[1]->successful() ? $responses[1]->json() : 'Request to todo 2 failed', 'todo_3' => $responses[2]->ok() ? $responses[2]->json() : 'Request to todo 3 failed', ]; return response()->json($data); });
戻りデータ:
記事: HTTP リクエストを使用した Laravel の複数の API
以上がHTTPリクエストを使用したLaravelの複数のAPIの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undress AI Tool
脱衣画像を無料で

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

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

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

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

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

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

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

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

readonlypropertiesinphp8.2canonlybeassignedonedonedontheconstructoraturatiddeclaration andcannotBemodifiedifiedifiedifiedifiedifiedifiedifiadtivedabilityattthelanguagelele.2.

bcmathisentialforAccuratecurateptocurrencycalcatulationsinphpbecuseating-pointarithmeticincecceptesuncectesubleroundingErrors.1..2 Yieldimimpreciseresults(e.g.、0.300000000000000000000000000precyptowsyptowyprectoyptoyprecyptoyprecyptoyppowsyptowprecyptowprecyptowprecyptowprecyptowprecyptowprecyptowprecyptowpreciseResults)

rawStringsindomain-drivenApplicationsは、ValueObjedStopReventBugsAndimproveTypeTytyのValueObue obue obue obtedsopreated; 1. 1.SustoprimiteObsessionを使用します

useguzzleforrobustttprequestswithheadersandtimeouts.2.parsehtmleffitywithsymfonydomddomedrawlerusingssseLectors.3.handlejavascript-heavysitesbyintegratingpuppeteerviaphpexec()torenderpages.4.respectrobots.txt、rotedelays.txt、adddelays.txt、adddelays.txt、

switchcanbeslyfasterthanif-elsewhencomparingsing liabariableagain stiplescalalarues、特にマネイセイセセソールティグアーズデュートープロシブルオプティイゼーション;

このチュートリアルでは、カスタム記事タイプリストのWordPressの各記事に「引用符を送信」ボタンを追加する方法に関する詳細な手順を提供します。クリックした後、記事IDを含むカスタムHTMLフォームがポップアップし、フォームデータはAJAXの提出と成功メッセージ表示です。コンテンツは、フロントエンドのjQuery UIポップアップ設定、動的データ転送、AJAX要求処理、バックエンドのWordPress Ajaxフックとデータ処理PHP実装をカバーし、完全な機能、安全で優れたユーザーエクスペリエンスを確保します。

一致式は、PHP8でより簡潔で安全な代替品を提供します。 IF-ELSEIFおよびスイッチと比較して、緩いタイプの比較の誤差を回避するために、厳密な比較(===)を自動的に実行します。 2。一致は、値を直接返すことができる式で、割り当てと関数のリターンに適しているため、コードの単純さを改善します。 3。一致は常に厳密なタイプチェックを使用して、整数、ブール膜、弦の間の予期しない一致を防止します。 4.単一腕のマルチ値マッチング(0、false、 ''など)をサポートしますが、複雑な条件(範囲判断など)は依然としてif-elseifを必要とします。したがって、単一の変数の正確な値をマッピングするときに一致を使用する必要がありますが、複雑なロジックはif-elseifを保持します。

phparrayshanddedatacollectionseffictifictlyusingindexorassociativeStructures; they recreated witharray()または[]、AccessedViakeys、ModifiedByAssignment、Iterated with foreach、およびmanipulatedUsingfunctionslikecount()、in_array()、Array_key_exists()、Array_exists()、Array_exists()、Array_key_exists()、Array_key_exists()、Array_key_exists()、
