كيفية استرجاع بيانات JSON POST في جانغو

تعلم كيفية إنشاء واختبار واجهة برمجة تطبيقات Django التي يمكنها إرسال واستقبال بيانات JSON باستخدام إطار عمل Django REST وApidog، وهو أداة قائمة على الويب تتيح لك اختبار وتصحيح واجهات برمجة التطبيقات بسهولة.

Amir Hassan

Amir Hassan

13 أغسطس 2025

كيفية استرجاع بيانات JSON POST في جانغو

Apidog للمؤسسات

النشر على الخوادم المحلية

SSO و RBAC

متوافق مع SOC 2

استكشف Apidog للمؤسسات

ديجانغو هو إطار عمل ويب بلغة بايثون مصمم لمساعدة المطورين في بناء تطبيقات الويب بسرعة وسهولة. إنه مجاني ومفتوح المصدر ويحتوي على مجتمع كبير ونشط من المطورين.

هل تريد تعلم كيفية إنشاء واختبار واجهة برمجة تطبيقات ديجانغو التي يمكنها إرسال واستقبال بيانات JSON؟ إذا كانت الإجابة بنعم، فأنت في المكان المناسب. بنهاية هذا المنشور، ستكون قادرًا على إنشاء واختبار واجهة برمجة تطبيقات ديجانغو التي يمكنها إرسال واستقبال بيانات JSON كمحترف. هيا نبدأ!

💡
أبيدوغ هو أداة قائمة على الويب تساعدك في اختبار وتصحيح واجهات برمجة التطبيقات. إنها تسمح لك بإرسال طلبات HTTP إلى أي نقطة نهاية API والحصول على الاستجابة بتنسيقات مختلفة، مثل JSON وXML وHTML، إلخ.

يمكنك أيضًا فحص الرؤوس وملفات تعريف الارتباط وأكواد الحالة والتفاصيل الأخرى للاستجابة. كما يسمح لك أبيدوغ بتعديل بيانات الاستجابة باستخدام JavaScript، وتصفية البيانات باستخدام JSONPath، والتحقق من صحة البيانات باستخدام JSON Schema.
button

ما هو JSON؟

JSON تعني ترميز كائنات JavaScript. إنه تنسيق موحد لتمثيل البيانات المهيكلة. إنه تنسيق نصّي يستخدم نصًا يمكن قراءته بواسطة الإنسان لتخزين ونقل كائنات البيانات التي تتكون من أزواج الصفة والقيمة والمصفوفات (أو قيم أخرى قابلة للتسلسل). يتم استخدام JSON بشكل شائع لنقل البيانات في تطبيقات الويب، مثل إرسال البيانات من الخادم إلى العميل، أو العكس.

يمكن أن يمثل JSON ستة أنواع من البيانات بشكل أصلي: نصوص، أرقام، قيم منطقية، null، مصفوفات، وكائنات. على سبيل المثال، إليك تمثيل JSON لمشاركة:

{
  "id": 1001,
  "title": "ما هو JSON؟",
  "author": {
    "id": 1,
    "name": "جيمس ووكر"
  },
  "tags": [
    "api",
    "json",
    "برمجة"
  ],
  "published": false,
  "publishedTimestamp": null
}

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

أساسيات طريقة طلب POST

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

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

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

ما هو ديجانغو ولماذا يجب عليك استخدامه؟

ديجانغو هو إطار عمل ويب يساعدك في بناء تطبيقات الويب بسرعة وسهولة. إنه مكتوب بلغة بايثون ويتبع نمط نموذج-عرض-نموذج (MVT). يوفر العديد من الميزات والأدوات، مثل:

ديجانغو أبيدوغ

يعد ديجانغو إطار عمل رائع لأي شخص يرغب في بناء تطبيقات الويب، سواء كنت مبتدئًا أو خبيرًا. إنه يساعدك على:

كيفية إعداد مشروع ديجانغو لجلب بيانات JSON للمشاركة

لإنشاء واختبار واجهة برمجة تطبيقات ديجانغو التي يمكنها إرسال واستقبال بيانات JSON، تحتاج إلى إعداد مشروع ديجانغو وإنشاء تطبيق API بسيط.

تثبيت ديجانغو

عليك أيضًا تثبيت بعض التبعيات والأدوات، مثل:

pip install virtualenv

pip install django

pip install djangorestframework

بعد تثبيت هذه التبعيات والأدوات، يمكنك إنشاء مشروع ديجانغو عن طريق تشغيل الأمر التالي في طرفيتك:

django-admin startproject django_post_json

سيقوم هذا الأمر بإنشاء مجلد باسم django_post_json يتضمن الملفات والمجلدات التالية:

الموقع الرسمي لديجانغو

إنشاء واجهة برمجة التطبيقات الخاصة بـ ديجانغو

يمكنك أيضًا إنشاء تطبيق API بسيط عن طريق تشغيل الأمر التالي في طرفيتك:

python manage.py startapp api

سيقوم هذا الأمر بإنشاء مجلد باسم api يتضمن الملفات والمجلدات التالية:

عليك أيضًا إضافة تطبيقك إلى قائمة INSTALLED_APPS في ملف settings.py لمشروعك. يمكنك القيام بذلك بإضافة السطر التالي في نهاية القائمة:

'api.apps.ApiConfig',

عليك أيضًا إضافة إطار عمل REST لـ ديجانغو إلى قائمة INSTALLED_APPS. يمكنك القيام بذلك بإضافة السطر التالي في نهاية القائمة:

'rest_framework',

لقد قمت الآن بإعداد مشروع ديجانغو وأنشأت تطبيق API بسيط. يمكنك تشغيل مشروعك عن طريق تشغيل الأمر التالي في طرفيتك:

python manage.py runserver

سيقوم هذا الأمر بتشغيل خادم تطوير يمكنك الوصول إليه من متصفحك على http://127.0.0.1:8000/. يجب أن ترى صفحة تحتوي على العبارة "تم التثبيت بنجاح! تهانينا!"

كيفية إنشاء عرض لجلب بيانات JSON للمشاركة في ديجانغو

لإنشاء واختبار واجهة برمجة تطبيقات ديجانغو التي يمكنها إرسال واستقبال بيانات JSON، تحتاج إلى إنشاء عرض وعنوان URL لنقطة نهاية API. العرض هو دالة أو فئة بايثون تتعامل مع الطلب والاستجابة لعنوان URL معين. تحدد المنطق والسلوك لتطبيقك. عنوان URL هو سلسلة تربط بعرض. تحدد العنوان ونمط تطبيقك.

كيفية إنشاء عرض لـ ديجانغو الخاص بك

يمكنك إنشاء عرض لهذه نقطة نهاية API في ملف views.py لتطبيقك. يمكنك القيام بذلك بإضافة الكود التالي إلى الملف:

from rest_framework import generics
from .models import Message
from .serializers import MessageSerializer

class MessageListCreateView(generics.ListCreateAPIView):
  queryset = Message.objects.all()
  serializer_class = MessageSerializer

class MessageRetrieveUpdateDestroyView(generics.RetrieveUpdateDestroyAPIView):
  queryset = Message.objects.all()
  serializer_class = MessageSerializer

سيقوم هذا الكود بإنشاء عرضين يرثان من العروض العامة لإطار العمل REST لـ ديجانغو. سيتم التعامل مع طلبات GET وPOST لقائمة الرسائل بواسطة عرض MessageListCreateView. بينما سيتعامل عرض MessageRetrieveUpdateDestroyView مع طلبات GET وPUT وPATCH وDELETE لرسالة واحدة.

سيستخدم كلا العرضين خصائص queryset وserializer_class لتحديد مصدر البيانات وتنسيق البيانات. يمكنك معرفة المزيد عن العروض العامة وطرقها من وثائق إطار العمل REST لـ ديجانغو: https://www.django-rest-framework.org/api-guide/generic-views/

يمكنك أيضًا إنشاء عنوان URL لهذه نقطة نهاية API في ملف urls.py لتطبيقك. يمكنك إنشاء هذا الملف في نفس المجلد مثل ملف views.py الخاص بك. يمكنك القيام بذلك بإضافة الكود التالي إلى الملف:

from django.urls import path
from .views import MessageListCreateView, MessageRetrieveUpdateDestroyView

urlpatterns = [
  path('messages/', MessageListCreateView.as_view(), name='message-list'),
  path('messages/<int:pk>/', MessageRetrieveUpdateDestroyView.as_view(), name='message-detail'),
]

سيقوم هذا الكود بإنشاء نمطين للعنوان URL يرتبطان بالعروض التي أنشأتها. ستطابق النمط الأول عنوان URL /messages/ وسيستخدم عرض MessageListCreateView. بينما سيتطابق النمط الثاني مع عنوان URL /messages/<int:pk>/ وسيستخدم عرض MessageRetrieveUpdateDestroyView. الجزء <int:pk> هو محول المسار الذي سيقوم بالتقاط قيمة صحيحة وتمريرها إلى العرض كوسيط pk. ستستخدم هذه القيمة لتحديد كائن الرسالة الذي سيعمل عليه العرض. يمكنك أيضًا إضافة وسيط name إلى كل نمط لإعطائه معرفًا فريدًا يمكنك استخدامه للإشارة إلى العنوان URL في كودك.

كيفية إنشاء عنوان URL لديكجانغو الخاص بك

عليك أيضًا تضمين أنماط عنوان URL لتطبيقك في ملف urls.py لمشروعك. يمكنك القيام بذلك بإضافة الكود التالي إلى الملف:

from django.urls import path, include

urlpatterns = [
  path('api/', include('api.urls')),
]

سيقوم هذا الكود بإنشاء نمط عنوان URL سيتطابق مع عنوان URL /api/ وسيتضمن أنماط عنوان URL لتطبيقك. بهذه الطريقة، يمكنك إنشاء مساحة أسماء لتطبيقك وتجنب أي تعارضات مع التطبيقات الأخرى أو عناوين URLs. يمكنك أيضًا إضافة شرطة مائلة في نهاية عنوان URL لجعله متسقًا وتجنب أي مشاكل في إعادة التوجيه.

لقد أنشأت الآن عرضًا وعنوان URL لنقطة نهاية API. يمكنك اختبار واجهة برمجة التطبيقات الخاصة بك عن طريق تشغيل الأمر التالي في طرفيتك:

python manage.py runserver

سيقوم هذا الأمر بتشغيل خادم تطوير يمكنك الوصول إليه من متصفحك على http://127.0.0.1:8000/. يمكنك أيضًا استخدام أبيدوغ، وهي أداة قائمة على الويب تتيح لك اختبار وتصحيح واجهات برمجة التطبيقات بسهولة، لاختبار واجهة برمجة التطبيقات الخاصة بك. سأوضح لك كيفية القيام بذلك في القسم التالي.

التعامل مع بيانات JSON للمشاركة في ديجانغو

التعامل مع بيانات JSON للمشاركة في ديجانغو هو مهمة شائعة لمطوري الويب الذين يرغبون في إنشاء واختبار واجهات برمجة التطبيقات RESTful. يوفر ديجانغو ميزات وأدوات متنوعة لمساعدتك في هذه المهمة، مثل:

import json
from django.http import JsonResponse

def my_view(request):
  if request.method == 'POST':
    data = json.loads(request.body) # تحليل بيانات JSON إلى قاموس
    # القيام بشيء ما مع البيانات
    return JsonResponse(data) # إرجاع البيانات كاستجابة JSON
from django.http import JsonResponse

def my_view(request):
  if request.method == 'GET':
    data = {'name': 'أليس', 'email': 'alice@example.com'} # إنشاء قاموس
    return JsonResponse(data, status=200, safe=True) # إرجاع القاموس كاستجابة JSON
from rest_framework import serializers
from .models import Message

class MessageSerializer(serializers.ModelSerializer):
  class Meta:
    model = Message
    fields = ['name', 'email', 'message']

سيقوم هذا الكود بإنشاء متسلسل يقوم بتحويل نموذج Message الخاص بك إلى تنسيق JSON والعكس. يمكنك معرفة المزيد عن إطار عمل REST لـ ديجانغو وميزاته وأدواته من هذا المقال:

هذه بعض التقنيات المتقدمة للتعامل مع بيانات JSON للمشاركة في ديجانغو. يمكنك استخدامها لإنشاء واختبار واجهات برمجة التطبيقات الخاصة بك في ديجانغو التي يمكنها إرسال واستقبال بيانات JSON.

استرجاع بيانات JSON للمشاركة في ديجانغو باستخدام أبيدوغ

يعد أبيدوغ أداة رائعة لأي شخص يعمل مع واجهات برمجة التطبيقات، سواء كنت مطوراً أو مختبراً أو مصمماً أو طالباً. إنها تساعدك على:

لاختبار واجهة برمجة التطبيقات الخاصة بك في ديجانغو التي يمكنها إرسال واستقبال بيانات JSON باستخدام أبيدوغ، تحتاج إلى اتباع هذه الخطوات:

إنشاء طلب جديد
طلب POST
بيانات JSON
إرسال الطلب

لقد اختبرت الآن واجهة برمجة التطبيقات الخاصة بك في ديجانغو التي يمكنها إرسال واستقبال بيانات JSON باستخدام أبيدوغ. يمكنك أيضًا اختبار نقاط نهاية واجهة برمجة التطبيقات والأساليب الأخرى باستخدام نفس الخطوات. يمكنك أيضًا استخدام أبيدوغ لاختبار واجهات برمجة التطبيقات الأخرى التي تجدها عبر الإنترنت أو تنشئها بنفسك. أبيدوغ أداة متعددة الاستخدامات وقوية يمكن أن تساعدك في أي مهمة تتعلق بواجهات برمجة التطبيقات. يمكنك معرفة المزيد عن أبيدوغ وميزاته وأدواته من الموقع الرسمي:

button

الخاتمة

في هذه المدونة، أظهرت لك كيفية إنشاء واختبار واجهة برمجة تطبيقات ديجانغو التي يمكنها إرسال واستقبال بيانات JSON. لقد تعلمت كيفية:

آمل أن تجد هذه المدونة ملهمة ومفيدة. يمكنك استخدام المهارات والمعرفة التي اكتسبتها من هذه المدونة لإنشاء واختبار واجهات برمجة التطبيقات الخاصة بك في ديجانغو التي يمكنها إرسال واستقبال بيانات JSON.

يمكنك أيضًا استخدام أبيدوغ لاختبار وتصحيح أي واجهات برمجة التطبيقات الأخرى التي تواجهها أو تنشئها. أبيدوغ أداة مفيدة ومساعدة يمكن أن تجعل تطوير واجهات برمجة التطبيقات واختبارها أسهل وأسرع.

ممارسة تصميم API في Apidog

اكتشف طريقة أسهل لبناء واستخدام واجهات برمجة التطبيقات