نحوه نوشتن یک وب API پایتون با Django

django

نحوه نوشتن یک وب API پایتون با Django

Django یکی از محبوب ترین فریمورک های توسعه API پایتون است. نحوه استفاده از آن را در این آموزش سریع بیاموزید. در ادامه با وبلاگ هاستینجا همراه باشید

جنگو فریمورک جامع وب است که با استفاده از آن همه فریمورکهای دیگر اندازه گیری می شود. یکی از محبوب ترین نام ها در توسعه API Python ، Django از زمان شروع در سال ۲۰۰۵ محبوبیت زیادی پیدا کرده است.

Django توسط بنیاد نرم افزار Django نگهداری می شود و پشتیبانی جامعه بزرگی را تجربه کرده است ، با بیش از ۱۱،۶۰۰ عضو در سراسر جهان. در Stack Overflow ، جنگو حدود ۱۹۱،۰۰۰ سؤال برچسب خورده دارد. وب سایت هایی مانند Spotify ، YouTube و Instagram برای مدیریت برنامه و داده ها به Django متکی هستند.

این مقاله یک API ساده را برای واکشی داده از سرور با استفاده از روش GET پروتکل HTTP نشان می دهد.

 

ساخت یک پروژه جدید

ابتدا ، یک ساختار برای برنامه Django خود ایجاد کنید. می توانید این کار را در هر مکانی از سیستم خود انجام دهید:

سپس ، یک محیط مجازی ایجاد کنید تا وابستگی های بسته را بطور محلی در فهرست پروژه جدا کنید:

در ویندوز ، برای فعال کردن محیط مجازی Python ، از دستور env\Scripts\activate استفاده کنید.

 

نصب جنگو و فریمورک REST جنگو

در مرحله بعد ، ماژول های پایتون را برای Django و Django REST نصب کنید:

یک پروژه جدید جنگو را فوری راه اندازی کنید

اکنون که یک محیط کار برای برنامه خود دارید ، باید یک پروژه جدید جنگو را راه اندازی کنید. بر خلاف یک فریمورک حداقل مانند Flask ، Django شامل دستورات اختصاصی برای این فرآیند است ( به (.) در خط اول توجه داشته باشید):

جنگو از پایگاه داده به عنوان backend خود استفاده می کند ، بنابراین شما باید قبل از شروع توسعه ، پایگاه داده خود را همگام سازی کنید. این پایگاه داده را می توان با اسکریپت management.py که هنگام اجرای دستور django-admin ایجاد شده است ، مدیریت کرد. از آنجا که در حال حاضر در دایرکتوری آموزش هستید ، برای اجرای اسکریپت که در یک فهرست قرار دارد از نماد ../ استفاده کنید:

 

ایجاد کاربر در جنگو

یک کاربر اولیه به نام admin با عنوان مثال رمز عبور password123 ایجاد کنید:

هنگامی که از شما خواسته شد رمز ورود را وارد کنید.

 

ایجاد سریال سازها و نماها در جنگو

برای اینکه Django بتواند اطلاعات را به درخواست HTTP GET منتقل کند ، باید شیء اطلاعات به داده های پاسخ معتبر ترجمه شود. جنگو برای این کار سریال سازها را پیاده سازی می کند.

در پروژه خود ، تعدادی سریالایزر را با ایجاد یک ماژول جدید با نام Quickstart / serializer.py تعریف کنید ، که برای نمایش داده ها استفاده خواهید کرد:

view در جنگو تابعی است که درخواست وب را می گیرد و پاسخ وب را برمی گرداند. پاسخ می تواند HTML باشد ، یا یک تغییر مسیر HTTP یا خطای HTTP ، یک سند JSON یا XML ، یک تصویر یا یک فایل TAR یا هر چیز دیگری که می توانید از طریق اینترنت بدست آورید. برای ایجاد یک نما  ، Quickstart / views.py را باز کنید و کد زیر را وارد کنید. این پرونده در حال حاضر وجود دارد و دارای متن بویلر در آن است ، بنابراین آن را نگه دارید و این متن را به پرونده اضافه کنید:

 

ایجاد URLs توسط جنگو

اکنون می توانید URL ایجاد کنید تا افراد بتوانند به API تازه کار شما دسترسی پیدا کنند. urls.py را در یک ویرایشگر متن باز کنید و نمونه پیش فرض را با این کد جایگزین کنید:

تنظیمات پروژه Django

ماژول تنظیمات برای این پروژه مثال در tutorial/settings.py ذخیره می شود ، بنابراین در ویرایشگر متن باز کنید و rest_framework را به انتهای لیست INSTALLED_APPS اضافه کنید:

 

API جنگو خود را آزمایش کنید

اکنون آماده آزمایش API ساخته شده هستید. ابتدا سرور داخلی را از خط فرمان راه اندازی کنید:

می توانید با حرکت به http://localhost:8000/users کاربرانی که از curl استفاده می کنند ، به API خود دسترسی پیدا کنید:

اکنون میتوانید از فایرفاکس و یا هر مرورگر دیگری استفاده کنید.

برای کسب اطلاعات بیشتر درباره API های RESTful با استفاده از Django و Python ، به مستندات جنگو مراجعه کنید.

 

نحوه نوشتن یک وب API پایتون با Django

چرا باید از جنگو استفاده کنم؟

مزایای عمده جنگو:

۱ – اندازه جامعه جنگو رو به رشد است ، بنابراین شما حتی برای یک پروژه پیچیده ، منابع زیادی برای راهنمایی دارید.

۲ – ویژگی هایی مانند قالب ، مسیریابی ، فرم ها ، تأیید اعتبار و ابزارهای مدیریت به صورت پیش فرض درج شده است. لازم نیست به دنبال ابزارهای خارجی باشید یا نگران ابزارهای شخص ثالث باشید که مشکلات سازگاری را معرفی می کنند

۳ – سازه های ساده برای کاربران ، حلقه ها و شرایط به شما امکان می دهد تا روی نوشتن کد توجه کنید.

۴ – این یک چارچوب بالغ و بهینه شده است که بسیار سریع و قابل اعتماد است.

 

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

۱ – جنگو پیچیده است! از دیدگاه یک توسعه دهنده ، جنگو می تواند دشوارتر از یک چارچوب ساده برای یادگیری باشد.

۲ – یک اکوسیستم بزرگ در اطراف جنگو وجود دارد. این یک بار عالی است که با جنگو راحت باشید ، اما وقتی هنوز می آموزید می تواند بسیار زیاد باشد.

 

جنگو گزینه خوبی برای برنامه یا API شماست. آن را بارگیری کنید ، با آن آشنا شوید و یک پروژه شگفت انگیز را شروع کنید!

نیاز به مشاوره دارید؟

تیم فروش آماده ارائه پیشنهاد و پاسخگویی به سوالات شماست.