当前位置: 首页 > news >正文

汽车网站建设企业园区网络设计方案

汽车网站建设,企业园区网络设计方案,电子工程专业大学排名,上海自贸区注册公司流程背景 自己在写一些油猴脚本,前端需要用 JS,后端是自己的服务,是用 Python 的 Django 框架完成的。 油猴脚本中需要通过 POST 方法,向后端传一些数据,所以前端我用的是 axios 库,后端需要用 Django 处理 P…

背景

自己在写一些油猴脚本,前端需要用 JS,后端是自己的服务,是用 Python 的 Django 框架完成的。

油猴脚本中需要通过 POST 方法,向后端传一些数据,所以前端我用的是 axios 库,后端需要用 Django 处理 POST 数据。

关于跨域名的问题,可以参考我的另一篇文章 Django 跨站请求伪造(csrf)防御——解决 POST 请求 403 问题

关于 POST 请求

POST 请求有多种类型,在 header 中的 Content-Type 中进行了定义。

Content-Type描述
application/json用于发送 JSON 格式的数据,axios 默认使用该格式
application/x-www-form-urlencoded用于提交表单数据,不支持传输文件,Django 文档中主要描述的是这种类型
multipart/form-data用于发送文件或同时发送文本数据和二进制数据
text/plain用于发送纯文本内容,不常用
application/xml用于发送或接收 XML 格式的数据,不常用

常用 POST 请求对应的发起与接收代码示例

application/json 类型

axios 发起,也是 axios 默认发起的 POST 请求时的类型:

data = { key: 'value'
}
headers = {'Content-Type': 'application/json'
}axios.post('url', data,{headers: headers
})
.then(function (response) {// 处理成功响应console.log(response.data);
})
.catch(function (error) {// 处理错误console.error(error);
});

Django 处理:

from django.http import JsonResponse
import jsondef my_json_post_view(request):if request.method == 'POST':data = json.loads(request.body)  # 解析JSON数据if 'key' in data.keys():# 处理数据...return JsonResponse({'message': f' key 的内容是 {data["key"]}'})

application/x-www-form-urlencoded 类型

axios 发起:

data = { key: 'value'
}
headers = {'Content-Type': 'application/x-www-form-urlencoded'
}axios.post('url', data, {headers: headers
})
.then(function (response) {// 处理成功响应console.log(response.data);
})
.catch(function (error) {// 处理错误console.error(error);
});

Django 处理:

def my_form_post_view(request):if request.method == 'POST':# 访问表单数据value = request.POST['key']# 处理数据...return HttpResponse('处理成功')  # 或者返回其他类型的响应

multipart/form-data 类型

嫌麻烦的,可以不用这个类型,因为我们可以偷懒一点,把文件进行 base64 编码,之后在 Django 后端的代码里进行 Base64 解码即可

axios 发起:

const formData = new FormData(); // 创建 FormData 实例
formData.append('file', fileInput.files[0]); // 添加文件字段和值(fileInput 是你的文件输入元素)
formData.append('textField', 'some text'); // 添加其他字段和值(如果需要的话)headers = {'Content-Type': 'multipart/form-data'
}axios.post('url', formData, {headers: headers
})
.then(function (response) {// 处理成功响应console.log(response.data);
})
.catch(function (error) {// 处理错误console.error(error);
});

Django 处理:

from django.core.files.uploadhandler.upload_handlers import upload_to_save_object
import osdef my_file_upload_view(request):if request.method == 'POST':uploaded_file = request.FILES['file']  # 获取上传的文件对象text_field = request.POST['textField'] # 获取其他字段# 保存文件到服务器等操作...return HttpResponse('文件上传成功')  # 返回响应
http://www.yayakq.cn/news/573330/

相关文章:

  • 上海虹口建设局官方网站jsp是前端还是后端开发的
  • 景洪网站建设代理主要干什么
  • 由一个网页建成的网站有没有做花卉种子的网站啊
  • 杭州网站建设哪家权威福州网站建设技术支持
  • 手机网站首页东莞门户网站建设报价表
  • 至高建设集团 网站中企动力在业内口碑如何
  • 网站博客模板php网站开发api
  • 深圳高端建设网站wordpress+安装插件+ftp
  • 网站宣传推广方案宁波公司名称大全
  • 做网站哪个公司企业网站制作要求
  • 浙江省建设信息网站nginx 做udp网站
  • diy学做衣服网站网站开发工具教程
  • 淘宝 网站建设教程视频wordpress棋牌模板
  • 深圳开发公司网站建设惠州seo外包v1
  • 有了网站域名如何做网站网站建设与维护招投标书
  • 移动商城 网站建设方法方式花果园网站建设
  • 网站建设公司专业网站制作开发电商网站设计费用
  • 广州外贸网站咨询拼多多网页qq登录
  • 株洲的网站建设东莞设计网站公司
  • 义乌外贸网站建设免费开网店的平台有哪些
  • 佛山企业网站建设公司wordpress可以建站吗
  • 策划人网站网站推广方案策划
  • 网站建设公司怎么选wordpress图wp-pic主题
  • 网站开发外文期刊网做英文网站
  • 宣传部网站建设计划书南安市网站建设
  • 广州哪里有做公司网站 什么价网站产品推广制作
  • 中山森斯网站建设公司中山网站建设设计
  • 梅州住房和建设局网站网站建设服务协议 百度
  • 3小时网站建设平台邯郸企业网站建设报价
  • 做网站的技术要求免费影视网站建设