نحوه ارسال درخواست های پست با cURL

نحوه ارسال درخواست های پست با cURL

cURL یک ابزار خط فرمان همه کاره است که برای انتقال یکپارچه داده در پروتکل های مختلف شبکه از جمله HTTP، HTTPS و FTP طراحی شده است. موجود در تمام سیستم عامل های اصلی، cURL به ابزار استاندارد برای ارسال درخواست های HTTP از خط فرمان تبدیل شده است. ابزار کراس پلتفرم آن از پروتکل هایی مانند HTTP، HTTPS، FTP و IMAP پشتیبانی می کند و ارسال درخواست ها به API ها و حذف وب سایت ها را آسان می کند. به دلیل در دسترس بودن گسترده و پشتیبانی از پروتکل، cURL معمولاً در اسناد REST API به عنوان راهی سریع برای آزمایش تماس‌های API مستقیماً از خط فرمان ارجاع می‌شود.

این آموزش به اجرای درخواست‌های POST با استفاده از cURL می‌پردازد و از طریق دستورالعمل‌های خط فرمان ساده، ارتباط موثر با سرورها را امکان‌پذیر می‌سازد.

درخواست POST چیست؟

درخواست POST یک روش HTTP است که برای ارسال داده ها به سرور استفاده می شود و یکی از رایج ترین روش های HTTP است. برخلاف درخواست‌های GET، که داده‌ها در URL گنجانده شده‌اند، درخواست‌های POST داده‌ها را در بدنه درخواست ارسال می‌کنند. این امکان انتقال اطلاعات محتاطانه را فراهم می‌کند و از محدودیت‌های طول URL که توسط مرورگرها در درخواست‌های GET اعمال می‌شود، جلوگیری می‌کند.

درخواست‌های POST اغلب برای ارسال فرم، آپلود فایل و ارسال داده‌های JSON به APIها استفاده می‌شوند. از آنجایی که داده ها در بدنه درخواست ذخیره می شوند، در تاریخچه مرورگر قابل مشاهده نیستند و برخلاف درخواست های GET، درخواست های POST معمولاً توسط مرورگرها ذخیره نمی شوند.

موارد استفاده عملی برای درخواست‌های cURL POST

درخواست‌های cURL POST به طور گسترده در سناریوهای مختلف استفاده می‌شوند، از جمله:

  • آزمایش API های REST – توسعه دهندگان از cURL برای آزمایش سریع نقاط انتهایی API قبل از پیاده سازی در برنامه ها استفاده می کنند.
  • خودکارسازی ارسال‌های فرم - با استفاده از cURL، می‌توانید تعاملات با فرم‌های وب را خودکار کنید، داده‌ها را بدون ورودی دستی ارسال کنید.
  • آپلود فایل ها – بسیاری از API ها امکان آپلود فایل ها را با استفاده از درخواست های POST فراهم می کنند و cURL را به ابزاری موثر برای خودکارسازی این فرآیند تبدیل می کند.
  • تعامل با سیستم های احراز هویت – توسعه دهندگان می توانند از cURL برای احراز هویت کاربران و دسترسی به منابع محافظت شده با توکن ها یا اعتبارنامه های API استفاده کنند.
  • خراش دادن و ادغام داده ها - استخراج و یکپارچه سازی داده ها از منابع مختلف آنلاین با استفاده از قابلیت های درخواست POST cURL ساده شده است.

اجرای یک درخواست POST با cURL

برای شروع استفاده از cURL برای درخواست های POST، مطمئن شوید که روی سیستم شما نصب شده است. اگر هنوز آن را نصب نکرده اید، به راهنمای ما در مورد راه اندازی cURL مراجعه کنید. در زیر یک جدول مرجع خلاصه گزینه های ضروری cURL آمده است:

پرچم کوتاه

پرچم بلند

استدلال(های)

توضیحات

-X

-- درخواست

(از "POST" برای درخواست های POST استفاده کنید)

متد HTTP را برای درخواست تعریف می کند

--کوکی

کوکی ها را در درخواست ارسال می کند

---کوکی

کوکی های دریافتی را در یک فایل ذخیره می کند

-- داده ها

داده ها را در یک درخواست POST منتقل می کند

-- شکست خوردن

خرابی بی صدا در خطاهای سرور را تضمین می کند

-اف

-- فرم

<name=content>

داده های فرم را ارسال می کند (application/x-www-form-urlencoded)

-اچ

-- سرصفحه

header/@file

شامل هدرهای سفارشی HTTP است

من

-- شامل

هدرهای HTTP را در پاسخ نمایش می دهد

-l

-- سر

فقط هدرها را بازیابی می کند

-k

--ناامن

تایید SSL را دور می زند

-- مکان

تغییر مسیرها را دنبال می کند (3XX)

-o

-- خروجی

خروجی را در یک فایل مشخص ذخیره می کند

-O

---نام از راه دور

خروجی را با نام فایل راه دور ذخیره می کند

-s

-- بی صدا

پیام های خروجی را سرکوب می کند

-v

-- پرحرف

خروجی دقیق را فعال می کند (اشکال زدایی)

-w

--نوشتن

جزئیات پاسخ را خروجی می دهد

برای مشاهده لیست کامل گزینه های موجود، از:

حلقه -- کمک

خطاهای رایج و نحوه رفع آنها

اگرچه cURL قدرتمند است، کاربران اغلب هنگام ارسال درخواست‌های POST با خطا مواجه می‌شوند. در اینجا برخی از مشکلات و راه حل های رایج وجود دارد:

  • curl: (6) نمی تواند میزبان را حل کند - این به این معنی است که نام دامنه نادرست است یا مشکلی با وضوح DNS وجود دارد. URL را دوبار بررسی کنید.
  • curl: (7) اتصال به میزبان ناموفق - نشان می دهد که سرور قابل دسترسی نیست. اطمینان حاصل کنید که سرور آنلاین است و اتصال اینترنتی فعال دارید.
  • curl: (35) خطای اتصال SSL - اگر درخواست به دلیل مشکلات SSL ناموفق بود، سعی کنید از -k برای دور زدن تأیید SSL استفاده کنید.
  • HTTP 400 Bad Request – این بدان معناست که سرور درخواست را رد کرده است، اغلب به دلیل فرمت داده نادرست. نوع محتوا و محموله داده را بررسی کنید.
  • HTTP 401 غیرمجاز – زمانی رخ می‌دهد که احراز هویت مورد نیاز باشد اما نادرست یا نادرست باشد. اطمینان حاصل کنید که کلیدها یا اعتبارنامه های API به درستی با -u یا -H "Authorization: Bearer <token>" ارسال شده اند.

دستور پایه درخواست POST

curl -X POST -d "Hello" https://example.com/api

در این دستور:

  • -X POST نوع درخواست را مشخص می کند.
  • -d "Hello" داده های ارسال شده را تعریف می کند.
  • https://example.com/api URL هدف است.

تنظیم هدرهای نوع محتوا

curl -X POST -H "Content-Type: text/plain" -d "Hello" https://example.com/api

افزودن -H "Content-Type: text/plain" به سرور اطلاع می دهد که قالب داده ها متن ساده است.

ارسال داده های JSON

curl -X POST -H "Content-Type: application/json" -d '{"key":"value"}' https://example.com/api

استفاده از application/json به عنوان نوع محتوا تضمین می کند که داده ها به درستی به عنوان JSON تفسیر می شوند.

ارسال داده های XML

curl -X POST -H "Content-Type: application/xml" -d '<?xml version="1.0" encoding="UTF-8"?><root><name>جان دو</name><age>30</age></root>' https://example.com/api

آپلود فایل ها با POST

curl -X POST -F "file=@/path/to/img.png" https://example.com/api/upload

برای بارگذاری چند فایل:

curl -X POST -F "file=@/path/to/img1.png" -F "file=@/path/to/img2.png" https://example.com/api/upload

احراز هویت با cURL

نام کاربری curl -u: رمز عبور https://example.com/login

نام کاربری و رمز عبور را با اعتبار واقعی جایگزین کنید.

نتیجه گیری

cURL تعاملات HTTP را با گزینه های خط فرمان قدرتمند و انعطاف پذیر خود ساده می کند. با تسلط بر درخواست‌های POST، توسعه‌دهندگان می‌توانند ارتباطات API، انتقال داده‌ها و آپلود فایل‌ها را به طور موثر مدیریت کنند. چه بخواهید نقاط پایانی API را آزمایش کنید، ارسال‌های فرم را خودکار کنید یا داده‌ها را از وب‌سایت‌ها حذف کنید، cURL راه‌حلی سبک و مؤثر ارائه می‌کند. به آزمایش cURL ادامه دهید تا گردش کار خود را بهینه کنید!

لطفا توجه داشته باشید که Plisio همچنین به شما پیشنهاد می دهد:

فاکتورهای رمزنگاری را با 2 کلیک ایجاد کنید and اهدای کریپتو را بپذیرید

14 ادغام ها

10 کتابخانه های محبوب ترین زبان های برنامه نویسی

19 ارز دیجیتال و 12 بلاک چین

Ready to Get Started?

Create an account and start accepting payments – no contracts or KYC required. Or, contact us to design a custom package for your business.

Make first step

Always know what you pay

Integrated per-transaction pricing with no hidden fees

Start your integration

Set up Plisio swiftly in just 10 minutes.