Django-ajax上传文件(request数据都可以在,request.body中找到)

本文介绍了一个使用Ajax进行文件上传的方法,包括前端JavaScript代码实现及服务器端处理文件上传的过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  1. 先编写一个ajax
    $.(".btn").click(function(){
        #先创建一个FormData,用来存放Form表单数据
        var formdata=new FormData()   
        formdata.append("user",$("#usre").val());#往formdata中添加数据
        formdata.append("avatar",$("#avatar")[0].files[0]);#添加文件数据
        $.ajax({
           url:"",
           type:"post",
           contentType:false, #数据预处理的编码格式
           processData:false,#是否需要数据预处理,ajax上传文件不需要预处理,都交给FormData处理
           data:formdata,
           success:function(data){
                   console.log(data)
    
    } 
    })
    })

     

  2. 服务器接收数据
    复制代码
    
    #服务器接收的时候,文件被放在request.FILES中,其他数据正常在request.POST中
    
    def file_put(request):
        if request.method=='POST':
            file_obj=request.FILES.get('avatar')#avatar是form表单中的name
            with open(file_obj.name,'wb') as f: #file_obj.name取到的是客户端上传的文件名
                for line in file_obj:
                    f.write(line)

     

转载于:https://www.cnblogs.com/wtil/p/9253576.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值