drf之上传文件接口

在开发中,一般为上传文件单独设立一个接口,以降低程序的耦合度,并且更方便后期的维护。

urls.py
from django.conf.urls import url, include
from . import views
# 路由组件,必须配合视图集使用
from rest_framework.routers import SimpleRouter
router = SimpleRouter()

# /books/image/(pk) 提交 form-data:用image携带图片
router.register('books/image', views.BookUpdateImageAPIView, 'book')

urlpatterns = [
    url('', include(router.urls))
]
serializers.py
class BookUpdateImageModelSerializer(serializers.ModelSerializer):
    class Meta:
        model = models.Book
        fields = ['image']
views.py
# 上传文件 - 修改头像
from rest_framework.viewsets import GenericViewSet
from rest_framework import mixins
class BookUpdateImageAPIView(GenericViewSet, mixins.UpdateModelMixin):
    queryset = models.Book.objects.filter(is_delete=False).all()
    serializer_class = serializers.BookUpdateImageModelSerializer

原文地址:https://www.cnblogs.com/Ghostant/p/12348236.html

时间: 2025-01-04 02:06:32

drf之上传文件接口的相关文章

Fiddler小技巧-测试上传文件接口&多参数并传情况

写了多年的API了,fidder还真是方便至极相对于postman来说. 两种常用方式: 抓包:app通过代理方式,就可以在pc端看到fidder的请求了 因为会监控好多跟我们需要的没关系的HTTP请求, 就要开启过滤了 主动调试API&上传文件参数&其它参数 拷贝点击"upload file"上传之后自动生成的body然后修改: ---------------------------acebdf13572468 Content-Disposition: form-da

PHP -- 上传文件接口编写 及 iOS -- 端上传图片AF实现

PHP 上传文件接口: //保存图片 $json_result ['status'] = 0; $path = 'upfile'; $json_result ['status'] = 0; $json_result ['successmsg'] = '上传失败'; if (isset ( $_FILES ['image'] )) { $upfile = 'upfile/' . $_FILES ['image'] ['name']; if (! @file_exists ( $path )) {

jmeter随笔(11)--上传文件接口出错

点击标题下「飞测」可快速关注 坚持的是分享,搬运的是知识,图的是大家的进步,没有收费的培训,没有虚度的吹水,喜欢就关注.转发(免费帮助更多伙伴)等来交流,想了解的知识请留言,给你带来更多价值,是我们期待的方向,有更多兴趣的欢迎切磋,我们微信订阅号,联系方式如下: 背景说明 坚持分享,坚持总结,技术需要时间的积累和练习,对jmeter实践的点滴的记录,这里分享交流jmeter的第11次小技巧,仅供参考和讨论,有想法的欢迎留言.谈论,手机上图片如果不清晰,请点击[阅读原文]查看. 1问题:一个导入文

FTP文件操作之上传文件

上传文件是一个比较常用的功能,前段时间就做了一个上传图片的模块.开始采用的是共享文件夹的方式,后来发现这种方法不太好.于是果断将其毙掉,后来选择采用FTP的方式进行上传.个人感觉FTP的方式还是比较好用的,所以跟大家分享一下.   /// <summary> /// FTP上传文件 /// </summary> /// <param name="fileUpload">上传控件</param> /// <param name=&qu

Express采坑系列之上传文件

封装文件上传工具multerUtil.js 创建util文件夹并在其下创建multerUtil.js var multer=require('multer'); var storage = multer.diskStorage({ //设置上传后文件路径,uploads文件夹会自动创建. destination: function (req, file, cb) { cb(null, './public/uploads') }, /** * 给上传文件重命名,获取添加后缀名 * 参数名 + 文件

Jmeter之上传文件

前言 我们可以利用postman工具来测试上传文件的接口,那么假如要利用Jmeter工具来进行上传接口的测试,又该如何测试呢? 上传文件的接口地址:/pinter/file/api/upload:接口类型:post:参数名称:file :MINE类型:application/octet-stream : 一:添加上传接口的请求,填入接口地址,添加察看结果树,勾选对POST使用multipart/form-data 二:选择文件上传,导入需要上传的文件 原文地址:https://www.cnblo

PHP学习之上传文件一

1.is_uploaded_file图片是否存在在临时文件夹内 move_loaded_file移动临时文件到指定根目录下 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/x

安卓之上传文件,即HTTP提交表单

获取文件: public void Init()    {        noScrollgridview = (GridView) findViewById(R.id.noScrollgridview);        noScrollgridview.setSelector(new ColorDrawable(Color.TRANSPARENT));        adapter = new GridAdapter(this);        adapter.update1();      

php的表单提交之上传文件

首先创建含表单的html文件:upload.html <!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8"> <title>上传文件</title> </head> <body> <form action="upload.php" method="post"