如何编写没有模型的 Django REST Api 以使用请求发送文件

斯内哈·辛德

我想编写一个没有模型的 rest 方法,以便我可以使用 python requests 模块发送一个 csv 文件。应从服务器远程访问此 csv 文件。

例如 - 我已使用请求登录到我的项目并获取 cookie 和标头,以便我可以将其传递给以下请求方法..

files = {'file': open('test.csv', 'rb')}
response = requests.post(url, files=files, headers=api_headers,
                      cookies=api_cookies)

所以这个 url 应该是:调用那个 rest 方法。

视图.py 文件:

class FileUploadView(APIView):
    parser_classes = (FileUploadParser,)

    def post(self, request, format=None):
        csvfile = request.data['file']
        #reader = csv.DictReader(csvfile)
        #for r in reader:
            #print(r)
        return Response(status=204)

请注意 - 我正在使用请求模块发送一个 csv 文件。

任何人都可以帮助我如何编写这个休息方法吗?

茨MEonTV

普通的 Django 视图

def myview(request):
    f = request.FILES['file']
    with open('some/folder/name.txt', 'wb+') as destination: 
        #f.name or f.filename (dont know which one)will get filename.So you can replace it name.txt
        for chunk in f.chunks():
            destination.write(chunk)
    return JsonResponse({"message": "Uploaded!"})

更新

# views.py
class FileUploadView(views.APIView):
    parser_classes = (FileUploadParser,)

    def post(self, request, filename, format=None):
        file_obj = request.data['file']
        # ...
        # do some stuff with uploaded file
        # ...
        return Response(status=200)

# urls.py
urlpatterns = [
    # ...
    url(r'^upload/(?P<filename>[^/]+)$', FileUploadView.as_view())
]

然后

url = 'http://127.0.0.1:8000/upload/test.csv' #filename should be in url
files = {'file': open('test.csv', 'rb')}
response = requests.post(url, files=files, headers=api_headers,
                      cookies=api_cookies)

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

没有模型的 Django REST API 框架

来自分类Dev

如何使用Django在AJAX(rest-api)中发送参数?

来自分类Dev

如何使用Django REST API验证android用户POST请求?

来自分类Dev

如何使用 angular 向 REST api 发送删除请求

来自分类Dev

如何保护Django Rest API

来自分类Dev

使用 Django 创建 REST API

来自分类Dev

Django Rest API ManyToMany API中没有任何内容

来自分类Dev

如何编写django-rest-framework api的单元测试?

来自分类常见问题

如何使用Django Rest Framework创建登录API?

来自分类Dev

Django Rest:如何使用{pk}禁用POST api

来自分类Dev

Django从模型或视图调用REST API?

来自分类Dev

Django API REST返回模型中的所有对象

来自分类Dev

使用REST API并发送POST请求

来自分类Dev

如何通过REST API发送文件?

来自分类Dev

如何使用 Firebase 编写 REST API?

来自分类Dev

使用Heroku部署Django REST API [GET请求,无限加载]

来自分类Dev

基于 django REST swagger 函数的 api 没有输入参数

来自分类Dev

如何缓存Django Rest Framework API调用?

来自分类Dev

如何使用REST / Django rest框架检索过期模型的更改

来自分类Dev

将jQuery与Django Rest API配合使用

来自分类Dev

将jQuery与Django Rest API配合使用

来自分类Dev

使用django rest框架的api设计理念

来自分类Dev

Django Rest框架上的私有REST API

来自分类Dev

如何为与 django 用户模型具有一对一关系的自定义模型构建 Rest Api

来自分类Dev

Django Rest Framework API

来自分类Dev

如何使用Django-oauth-toolkit通过Django-rest-framework测试API端点

来自分类Dev

如何使用 JSON 在 Rest API 请求中发送不带引号的数值

来自分类Dev

如何在Django中使用ajax发布请求发送文件

来自分类Dev

如何获得向REST API发送请求的页面?

Related 相关文章

热门标签

归档