用于互连外部 API 的 Django Rest Framework 库
项目描述
姜戈幽灵
将多个外部 HTTP API 互连为 Http 服务的库
安装
pip install spook
用法
为您的输入验证声明一个序列化程序类
from rest_framework import serializers
class MySerializer(serializers.ModelSerializer):
name = serializers.CharField()
age = serializers.IntegerField()
class Meta:
fields = ('name', 'age', )
声明一个 InputValidator
from spook.validators import InputValidator
class MyResourceInputValidator(InputValidator):
serializer_class = MySerializer
声明一个 API 资源类。
from spook.resources import APIResource
class MyResource(APIResource):
api_url = 'https://my.external/api'
validator = MyResourceInputValidator
现在您可以实例化 MyResource 类并使用方法
resource = MyResource()
# List resources
resource.list()
# Retrieve a single resource
resource.retrieve(pk=1)
# Create resource
resource.create({'name': 'Pablo', 'age': 28})
# Update resource
resource.update(pk=1, data={'name': 'Pablo Moreno'})
# Delete resource
resource.delete(pk=1)
也有一些视图可用
from spook.views import (
APIResourceRetrieveView, APIResourceListView, APIResourceCreateView, APIResourcePutView,
APIResourceRetrieveUpdateView, APIResourceRetrieveUpdateDestroyView, APIResourceListCreateView,
)
class ListCreateProductResourceView(APIResourceListCreateView):
resource = ProductResource
def get_token(self, request):
return '' # Wee need to override get_token()
class RetrieveUpdateDestroyProductResourceView(APIResourceRetrieveUpdateDestroyView):
resource = ProductResource
def get_token(self, request):
return ''
发展
我们建议使用虚拟环境
安装诗歌
pip install poetry
安装依赖项
poetry install
运行测试
poetry run pytest --cov=spook
项目详情
下载文件
下载适用于您平台的文件。如果您不确定要选择哪个,请了解有关安装包的更多信息。
源分布
spook-3.2.7.tar.gz
(7.4 kB
查看哈希)
内置分布
spook-3.2.7-py3-none-any.whl
(7.9 kB
查看哈希)