نحوه استفاده از POST با guzzlehttp/guzzle در لاراول

نحوه استفاده از POST با guzzlehttp/guzzle در لاراولGuzzle یک کتابخانه کلاینت HTTP PHP است که ارسال درخواست‌های HTTP به سرورهای وب و تعامل با API ها را آسان می‌کند. این کتابخانه وظایفی مانند ارسال درخواست‌های GET و POST، پردازش داده‌های پاسخ و مدیریت هدرهای درخواست را ساده می‌کند. Guzzle به طور معمول در برنامه‌های PHP برای ارتباط با سرویس‌های خارجی از طریق اینترنت استفاده می‌شود.هدف من این است که یک برنامه Laravel توسعه دهم، آن را در localhost اجرا کنم و سپس از Postman برای ارسال درخواست‌های API و دریافت پاسخ‌ها از یک برنامه شخص ثالث استفاده کنم.مرحله 1. ایجاد یک پروژه لاراولبا استفاده از دستور مربوطه، یک پروژه جدید (در اینجا projectguzzel نامیده شده است) ایجاد کنید.laravel new projectguzzelسپس به پوشه مربوطه بروید.cd projectguzzeسپس پروژه را در ویژوال استودیو کد (vscode) بارگذاری کنید.code .مرحله 2. نصب Guzzle در پروژهدر یک ترمینال جدید، کتابخانه Guzzle HTTP client را نصب کنید.composer require guzzlehttp/guzzleمرحله ۳: ایجاد یک Controller برای پردازش درخواستphp artisan make:controller PostControllerبه Controller ایجاد شده بروید (در اینجا PostController نامیده شده است)app > Http > Controllers > PostController<?php namespace App\Http\Controllers; use App\Http\Controllers\Controller; use Illuminate\Http\Request; use GuzzleHttp\Client; class PostController extends Controller { public function postRequest(Request $request) { //Create Client object to deal with $client = new Client(); // Define the request parameters $url = 'https://reqres.in/api/users'; $headers = [ 'Content-Type' => 'application/json', ]; $data = [ 'name' => $request->input('name'), 'job' => $request->input('job'), ]; // POST request using the created object $postResponse = $client->post($url, [ 'headers' => $headers, 'json' => $data, ]); // Get the response code $responseCode = $postResponse->getStatusCode(); return response()->json(['response_code' => $responseCode]); } }استفاده از کتابخانه Guzzle الزامی است.use GuzzleHttp\Client;به عنوان یک API خارجی، از https://reqres.in/api/users استفاده کردیم.مرحله ۴: ایجاد Route برای متد ایجاد شدهبه پوشه API بروید.routes > api.phpRoute::middleware('auth:sanctum')->get('/user', function (Request $request) { return $request->user(); }); //add the route Route::post('postdata', [PostController::class, 'postRequest']);اضافه کردن Controller مربوطه به api.php الزامی است.use App\Http\Controllers\PostController;حالا ما در سمت سرور لاراول آماده هستیم. پروژه را در localhost اجرا کنید.php artisan serveمرحله ۵: ایجاد یک درخواست POST با استفاده از postmanدر postman به مسیر زیر درخواست بفرستید.http://localhost:8000/api/postdataهمچنین در body درخواست از داده‌های فیک ساخته شده، استفاده کنید.{ &quotname&quot: &quotbhathiya&quot, &quotjob&quot: &quotASE&quot }همانطور که در کد بالا مشاهده می شود، هنگامی که کد پاسخ 201 باشد، به معنای این است که همه چیز درست پیش رفته است. ما با موفقیت داده های جدید را به URL شخص ثالث ارسال کردیم و پاسخی دریافت می کنیم دهد که پروژه با موفقیت انجام شده است. به جای استفاده از Postman، می توانیم تماس های API را مستقیماً از برنامه خود انجام دهیم. حالا شما می دانید چگونه از guzzle در Laravel استفاده کنید.دستور composer show guzzlehttp/guzzle نسخه guzzle را نشان می دهدPOST - ارسال داده ها به سرور با هدف ایجاد یا به روزرسانی در سرور.artisan ابزار رابط خط فرمانی است که با چارچوب PHP Laravel همراه است. این ابزار به توسعه دهندگان مجموعه ای از دستورات پیش تعریف شده برای مدیریت جوانب مختلف برنامه های Laravel خود را فراهم می کند.در این مقاله درباره‌ی ``نحوه استفاده از POST با guzzlehttp/guzzle در لاراول`` صحبت کردیم. امیدواریم که این مقاله مورد استفاده شما دوستان عزیز قرار گرفته باشد. اگر هرگونه سوالی در خصوص این مقاله داشتید میتوانید در قسمت نظرات همین مقاله با ما در میان بگذارید.منبع: وبسایت میموک