إرسال البيانات إلى الخادم هو مهمة شائعة لمطوري الويب، وهناك عدة طرق للقيام بذلك. واحدة من أكثر الطرق فعالية لتحديث الموارد الموجودة على الخادم هي استخدام طلب PUT. اليوم، سنتعمق في كيفية إرسال طلبات PUT مع بيانات JSON، لضمان فهمك الواضح للعملية. بالإضافة إلى ذلك، سنعرض لك كيفية الاستفادة من أدوات مثل API و Apidog لتبسيط سير عملك.
فهم طلبات PUT
للقيام بذلك، دعنا نوضح ما هو طلب PUT. في عالم APIs، طرق HTTP تُستخدم لأداء إجراءات على الموارد. PUT هي واحدة من هذه الطرق، وهي مصممة تحديدًا لتحديث مورد موجود أو إنشاء مورد جديد إذا لم يكن موجودًا.
أساسيات طلبات PUT
تخيل أنك تعمل مع نظام ملفات تعريف المستخدمين. قد يكون لديك مورد مستخدم به تفاصيل مثل الاسم والبريد الإلكتروني والعنوان. إذا كنت تريد تحديث عنوان المستخدم، فستستخدم طلب PUT.
إليك الهيكل العام لطلب PUT:
- URL: نقطة النهاية حيث يوجد المورد.
- Headers: بيانات وصفية حول الطلب، بما في ذلك نوع المحتوى.
- Body: البيانات الفعلية التي تريد إرسالها، غالبًا بتنسيق JSON.
لماذا JSON؟
JSON (تنسيق كائن جافا سكريبت) هو أكثر التنسيقات شيوعًا لإرسال البيانات عبر الويب. إنه خفيف الوزن، وسهل القراءة، ومدعوم من معظم لغات البرمجة. عندما ترسل طلب PUT مع بيانات JSON، فإنك في الأساس تقوم بتحديث المورد بمعلومات جديدة مُنسقة ككائن JSON.
الإعداد لطلبات PUT
قبل أن نغوص في البرمجة، تحتاج إلى بعض الأشياء في مكانها:
- نقطة نهاية API: URL حيث سترسل طلب PUT الخاص بك.
- مفتاح API (إذا كان مطلوبًا): بعض APIs تتطلب مصادقة.
- أداة أو مكتبة: لإرسال طلبات HTTP، مثل Apidog أو Postman أو لغة برمجة مزودة بإمكانيات HTTP.
الأدوات التي ستحتاجها
بينما يمكنك استخدام أي عميل HTTP، فإن Apidog هو أداة رائعة تبسط اختبار وتطوير API. إذا لم تكن قد قمت بذلك من قبل، قم بتنزيل Apidog مجانًا وثبته على جهازك. سيسهل عليك التعامل مع طلبات PUT.
إرسال طلبات PUT باستخدام Apidog
لنبدأ بإرسال طلب PUT باستخدام Apidog. اتبع هذه الخطوات:
- فتح Apidog: قم بتشغيل التطبيق وأنشئ طلبًا جديدًا

2. ضبط الطريقة على PUT: اختر PUT من القائمة المنسدلة.

3. أدخل URL: اكتب نقطة نهاية API.

4. أضف بيانات JSON: في قسم الجسم، أدخل بيانات JSON الخاصة بك.
إليك مثال على طلب PUT لتحديث عنوان مستخدم:
{
"name": "جون دو",
"email": "john.doe@example.com",
"address": "1234 Main St, Anytown, USA"
}
عندما ترسل هذه البيانات، سيقوم الخادم بتحديث مورد المستخدم بمعلومات العنوان الجديدة.

5. إرسال الطلب: انقر على زر "إرسال" واستعرض الاستجابة.

كتابة طلبات PUT في الكود
بينما تعتبر أدوات مثل Apidog رائعة للاختبار، ستحتاج غالبًا إلى إرسال طلبات PUT مباشرة من كود التطبيق الخاص بك. دعنا نستعرض كيفية القيام بذلك في بعض لغات البرمجة الشائعة.
استخدام JavaScript (Fetch API)
تعتبر Fetch API في JavaScript طريقة حديثة لإجراء طلبات HTTP. إليك كيفية إرسال طلب PUT مع بيانات JSON:
const url = 'https://api.example.com/user/1';
const data = {
name: 'جون دو',
email: 'john.doe@example.com',
address: '1234 Main St, Anytown, USA'
};
fetch(url, {
method: 'PUT',
headers: {
'Content-Type': 'application/json'
},
body: JSON.stringify(data)
})
.then(response => response.json())
.then(data => console.log('نجاح:', data))
.catch(error => console.error('خطأ:', error));
استخدام Python (Requests Library)
مكتبة Requests في Python هي أداة ممتازة أخرى لإجراء طلبات HTTP. إليك كيفية القيام بذلك:
import requests
import json
url = 'https://api.example.com/user/1'
data = {
'name': 'جون دو',
'email': 'john.doe@example.com',
'address': '1234 Main St, Anytown, USA'
}
response = requests.put(url, headers={'Content-Type': 'application/json'}, data=json.dumps(data))
print(response.status_code)
print(response.json())
استخدام Java (HttpURLConnection)
HttpURLConnection في Java أكثر تفصيلاً قليلاً، ولكنها تؤدي المهمة:
import java.io.OutputStream;
import java.net.HttpURLConnection;
import java.net.URL;
import java.nio.charset.StandardCharsets;
public class PutRequestExample {
public static void main(String[] args) {
try {
URL url = new URL("https://api.example.com/user/1");
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
connection.setRequestMethod("PUT");
connection.setRequestProperty("Content-Type", "application/json; utf-8");
connection.setDoOutput(true);
String jsonInputString = "{\"name\": \"جون دو\", \"email\": \"john.doe@example.com\", \"address\": \"1234 Main St, Anytown, USA\"}";
try (OutputStream os = connection.getOutputStream()) {
byte[] input = jsonInputString.getBytes(StandardCharsets.UTF_8);
os.write(input, 0, input.length);
}
int responseCode = connection.getResponseCode();
System.out.println("رمز الاستجابة: " + responseCode);
// قراءة الاستجابة (إذا لزم الأمر)
} catch (Exception e) {
e.printStackTrace();
}
}
}
معالجة الاستجابات
عندما ترسل طلب PUT، ستحصل على استجابة من الخادم. ستخبرك هذه الاستجابة ما إذا كان طلبك ناجحًا أم إذا كانت هناك أي أخطاء. إليك بعض رموز الاستجابة الشائعة:
- 200 OK: كان الطلب ناجحًا، وتم تحديث المورد.
- 201 تم الإنشاء: تم إنشاء المورد بنجاح (إذا لم يكن موجودًا).
- 400 طلب غير صالح: لم يتمكن الخادم من فهم الطلب (على سبيل المثال، JSON غير صالح).
- 401 غير مصرح به: تتطلب المصادقة وقد فشلت أو لم يتم تقديمها.
- 404 غير موجود: لم يتم العثور على المورد المطلوب.
- 500 خطأ في الخادم الداخلي: حدث شيء خاطئ في الخادم.
مثال على معالجة الاستجابات في JavaScript
دعنا نعيد زيارة مثال JavaScript الخاص بنا ونضيف معالجة الاستجابة:
fetch(url, {
method: 'PUT',
headers: {
'Content-Type': 'application/json'
},
body: JSON.stringify(data)
})
.then(response => {
if (!response.ok) {
throw new Error('استجابة الشبكة لم تكن جيدة ' + response.statusText);
}
return response.json();
})
.then(data => console.log('نجاح:', data))
.catch(error => console.error('خطأ:', error));
نصائح لإرسال طلبات PUT مع بيانات JSON
الآن بعد أن عرفت الأساسيات، إليك بعض النصائح لضمان فعالية طلبات PUT الخاصة بك:
تحقق من صحة JSON الخاصة بك
قبل إرسال بيانات JSON الخاصة بك، تحقق من صحتها لضمان تنسيقها بشكل صحيح. هناك العديد من أدوات التحقق من صحة JSON المتاحة عبر الإنترنت.
استخدم رؤوس مناسبة
حدد دائمًا الرأس Content-Type على application/json عند إرسال بيانات JSON. هذا يخبر الخادم بأنه يتوقع JSON في جسم الطلب.
التعامل مع الأخطاء برشاقة
قم بتنفيذ معالجة الأخطاء في كودك لإدارة المشاكل المحتملة مثل أخطاء الشبكة أو الاستجابات غير الصالحة. سيساعد ذلك في جعل تطبيقك أكثر قوة.
اختبر باستخدام أدوات
استخدم أدوات مثل Apidog لاختبار طلبات PUT الخاصة بك قبل تنفيذها في كودك. يمكن أن يوفر لك هذا الكثير من وقت تصحيح الأخطاء.
استنتاج
إرسال طلبات PUT مع بيانات JSON هي مهارة أساسية لأي مطور ويب. سواء كنت تحديث ملفات تعريف المستخدمين، أو تعديل الموارد، أو مزامنة البيانات، فإن فهم كيفية صياغة هذه الطلبات أمر بالغ الأهمية.
تذكر أن تنزيل Apidog مجانًا لجعل اختبار API الخاص بك أسهل وأكثر كفاءة. مع الأدوات والمعرفة الصحيحة، ستكون مجهزًا جيدًا للتعامل مع أي تفاعل مع API.
رمضان كريم!
