معرفی شرکت ها


drf-requests-jwt-0.9


Card image cap
تبلیغات ما

مشتریان به طور فزاینده ای آنلاین هستند. تبلیغات می تواند به آنها کمک کند تا کسب و کار شما را پیدا کنند.

مشاهده بیشتر
Card image cap
تبلیغات ما

مشتریان به طور فزاینده ای آنلاین هستند. تبلیغات می تواند به آنها کمک کند تا کسب و کار شما را پیدا کنند.

مشاهده بیشتر
Card image cap
تبلیغات ما

مشتریان به طور فزاینده ای آنلاین هستند. تبلیغات می تواند به آنها کمک کند تا کسب و کار شما را پیدا کنند.

مشاهده بیشتر
Card image cap
تبلیغات ما

مشتریان به طور فزاینده ای آنلاین هستند. تبلیغات می تواند به آنها کمک کند تا کسب و کار شما را پیدا کنند.

مشاهده بیشتر
Card image cap
تبلیغات ما

مشتریان به طور فزاینده ای آنلاین هستند. تبلیغات می تواند به آنها کمک کند تا کسب و کار شما را پیدا کنند.

مشاهده بیشتر

توضیحات

Django Rest Framework Requests with JWT support
ویژگی مقدار
سیستم عامل -
نام فایل drf-requests-jwt-0.9
نام drf-requests-jwt
نسخه کتابخانه 0.9
نگهدارنده []
ایمیل نگهدارنده []
نویسنده Sensidev
ایمیل نویسنده lucian.corduneanu@sensidev.com
آدرس صفحه اصلی https://github.com/sensidev/drf-requests-jwt
آدرس اینترنتی https://pypi.org/project/drf-requests-jwt/
مجوز MIT
====================================== HTTP Requests with JWT support for DRF ====================================== This is a simple helper used to communicate between Django instances. It is suited to work well with Django Rest Framework API points and serializers. Features -------- - Authenticate with JWT if not already - Cache JWT with different backends (for now Django Cache and File System) - Request all pages, before delivering the result - Deserialize the result with standard DRF serializer classes Install it ---------- ``pip install drf_requests_jwt`` How to use it ------------- Assuming there is a `devices` paginated API point on another Django instance and you need all devices fetched. Then you'll inherit from `HttpRequestService` and implement the abstract methods something along these lines: :: from apps.devices.models import Device # Your Device Django model. from rest_framework import serializers from drf_requests_jwt.services import HttpRequestService class DeviceSerializer(serializers.Serializer): eui = serializers.CharField() def create(self, validated_data): return Device(**validated_data) class DeviceHttpRequestService(HttpRequestService): obtain_jwt_allowed_fail_attempts = 3 cache_backend_class = 'drf_requests_jwt.backends.django_cache.DjangoCacheBackend' def _get_base_url(self): return 'https://example.com' def _get_jwt_login_url_path(self): return 'api/v1/auth/jwt/login/' def _get_url_path(self): return 'api/v1/devices/' def _get_username(self): return 'john' def _get_password(self): return 'snow' def _get_params(self): return { 'param1': 'val1', 'param2': 'val2', } def get_deserialized_data(self): device_list = [] for device in self.get_results_from_all_pages(): serializer = DeviceSerializer(data=device) if serializer.is_valid(): device_list.append(serializer.save()) return device_list Now in your business logic where you need the list of devices you'll call it like this: ``devices = DeviceHttpRequestService().get_deserialized_data()`` Mixins ------ There is a mixin helping with deserialization. :: from drf_requests_jwt.deserializers import ObjectListDeserializerMixin from apps.devices.serializers import DeviceSerializer # Your device serializer. class DeviceDeserializerMixin(ObjectListDeserializerMixin): serializer_class = DeviceSerializer class DeviceHttpRequestService(DeviceDeserializerMixin, HttpRequestService): # ... Other abstract methods implemented def get_deserialized_data(self): return self.get_deserialized_object_list() Conclusion ---------- This is quite a specific helper that works well for our use case, but I think it can be easily adjusted to fit other needs. Please feel free to bring your pull requests. Thanks.


نیازمندی

مقدار نام
>=2.18.1 requests
>=1.2.4 python-slugify


نحوه نصب


نصب پکیج whl drf-requests-jwt-0.9:

    pip install drf-requests-jwt-0.9.whl


نصب پکیج tar.gz drf-requests-jwt-0.9:

    pip install drf-requests-jwt-0.9.tar.gz