كيفية استخدام cURL Post Data من ملف

How Use Curl Post Data From File



cURL هي أداة سطر أوامر مجانية ومفتوحة المصدر تُستخدم لنقل البيانات إلى أو من مضيف بعيد بأقل تفاعل من المستخدم. يعمل cURL مع البروتوكولات الأساسية مثل HTTP و FTP و SCP و SFTP.

يسمح للمستخدمين بتحميل البيانات وتنزيلها إما باستخدام أوامر فردية أو نصوص باش. كما يوفر ميزات مثل مصادقة المستخدم ونفق الوكيل واستئناف التنزيل والتحميلات المستندة إلى النموذج وشهادات SSL وغير ذلك الكثير. من الآمن أن نقول إن cURL أكثر من مجرد عميل HTTP.







سيرشدك هذا البرنامج التعليمي خلال وظيفة cURL التي تتيح للمستخدمين تنفيذ طلبات نشر HTTP باستخدام بيانات الملف.



قبل أن نبدأ ، اسمحوا لي أن أذكر أن هذا ليس دليل المبتدئين إلى cURL ؛ أنت بحاجة إلى درجة من المعرفة المسبقة ، لا سيما معرفة بروتوكولات الشبكة وطلبات HTTP والمزيد.



قبل أن نتمكن من الغوص في استخدام cURL لتنفيذ طلبات POST ، دعنا أولاً نبدأ الإعداد.





كيفية تثبيت cURL

في معظم الحالات ، ستجد cURL مثبتًا في توزيعات Linux الرئيسية افتراضيًا. لتأكيد أن لديك cURL ، استخدم الأمر

حليقة - - مساعدة

إذا تلقيت خطأ:



-باش: حليقة:أمرغير موجود

سوف تحتاج إلى تثبيته قبل المتابعة.

استخدم مدير الحزم الافتراضي لإكمال التثبيت كما هو موضح في الأوامر أدناه:

سودو تحديث apt-get

سودو تثبيت apt-getلفة

قبل مناقشة كيفية نشر البيانات من ملف باستخدام cURL ، اسمح لي بالتحدث عن طلب POST باختصار. كالعادة ، إذا كنت معتادًا على هذا بالفعل ، فلا تتردد في التخطي إلى الأمام ؛ خلاف ذلك ، التزم.

طلب cURL POST

يعد طلب نشر HTTP أحد أكثر طرق طلب HTTP / HTTPS شيوعًا المستخدمة لإرسال البيانات إلى مضيف بعيد لإنشاء مورد أو تحديثه.

حاليا :

من فضلك لا تخلط بين الطريقة مع PUT ؛ على الرغم من أنهما متشابهان تمامًا ، إلا أنهما تختلفان بينهما.

يتم تخزين البيانات المرسلة باستخدام طلب POST بشكل أساسي في نص الطلب لطلب HTTP.

على سبيل المثال ، ضع في اعتبارك طلب POST أدناه الذي يرسل اسم المستخدم وكلمة المرور بالإضافة إلى قيمهما.

بريد/محدد/login.php HTTP/1.1المضيف: نوع المحتوى linuxhint.com: التطبيق/x-www-form-urlencodedاسم االمستخدم= لينكسينت&كلمه السر= كلمة المرور

لإرسال طلب POST أعلاه باستخدام cURL ، يمكننا تحديد الأوامر على النحو التالي:

لفة-xبريد اسم االمستخدم= لينكسينت&كلمه السر= كلمة المرور https://linuxhint.com/محدد/login.php

في الأمر أعلاه ، استخدمنا الخيار -d لإخبار cURL بتضمين الرؤوس الافتراضية ، وهي نوع المحتوى: application / x-www-form-urlencoded

يحدد الخيار -X طريقة طلب HTTP لاستخدام ، في هذه الحالة ، طلب HTTP POST.

cURL حدد نوع المحتوى

في بعض الحالات ، قد نرغب في تحديد نوع المحتوى [صراحة] عند إرسال الطلب. يحدد كيان نوع المحتوى في الرأس نوع وسائط المورد الذي نرسله. يُعرف نوع الوسائط أيضًا باسم نوع MIME.

إذا كنت ترغب في التعرف على أنواع MIME ، ففكر في المورد المقدم أدناه:

https://linkfy.to/IANA-MIME-Types

لتحديد نوع المحتوى في طلب cURL ، يمكننا استخدام العلامة -H. على سبيل المثال ، دعنا نرسل MIME Type of application / JSON.

لفة-Xبريد {اسم المستخدم: linuxhint ، كلمة المرور: كلمة المرور} نوع المحتوى: التطبيق/json https://linuxhint.com/محدد/login.php

يحدد ما ورد أعلاه أننا نريد إرسال كائن JSON إلى عنوان URL المقدم. يمكنك استخدام هذا لقراءة القيم من ملف JSON أو إرسالها كملف خام.

كيف تقرأ البيانات من ملف

لنفترض أنك تريد تقديم طلبات في سطر الأوامر باستخدام cURL ، لكن لديك البيانات المراد إرسالها مخزنة في ملف. يمكنك استخدام نوع المحتوى لتحديد نوع الوسائط ثم تمرير مسار الملف الذي يحتوي على البيانات. في هذا المثال ، سأوضح استخدام كائن JSON.

يحتوي ملف JSON (data.json) على القيم التالية:

{
'اسم االمستخدم':'linuxhint'و
'كلمه السر':'كلمه السر'
}

لإرسال هذه البيانات من ملف JSON ، يمكننا استخدام -d ثم تمرير اسم الملف كما هو موضح في الأمر أدناه:

لفة-Xبريدنوع المحتوى: التطبيق/json @data.json https://linuxhint.com/محدد/login.php

يمكنك أيضًا استخدام خيار –data-binary.

لفة-Xبريدنوع المحتوى: التطبيق/json- ثنائي البيانات @ /الصفحة الرئيسية/المستعمل/data.json https://linuxhint.com/محدد/login.php

يمكنك أيضًا استخدام ملف نصي لإرسال البيانات ؛ كل ما تحتاج إلى تحديده هو نوع المحتوى كنص / عادي.

على سبيل المثال ، ملف نصي (data.txt) يحتوي على القيم التالية

اسم االمستخدم= لينكسينت&كلمه السر= كلمة المرور

باستخدام الأمر cURL ، أرسل الطلب ببساطة على النحو التالي:

لفة-Xبريدنوع المحتوى: نص/عاديdata.txt https://linuxhint.com/محدد/login.php

يمكنك استخدام أنواع ملفات أخرى يمكنك استخدامها مثل XML و HTML وغيرها الكثير.

استنتاج

في هذا البرنامج التعليمي ، ناقشنا كيفية تقديم طلبات POST وتمرير البيانات بتنسيقات مختلفة. من الجيد أن تضع في اعتبارك أنه إلى جانب كونه قويًا جدًا ، فإن cURL أيضًا مرن جدًا. يمكن أن يجمع بين مجموعة من الخيارات في أمر واحد لإنشاء طلبات قوية. لمزيد من المعلومات ، أوصي بوثائق cURL كما هي مكتوبة بشكل جيد.

https://curl.se/docs/

شكرًا لك على القراءة ، واستمتع مع cURL.