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

4414站长平台企业建设网站软件

4414站长平台,企业建设网站软件,wordpress文章怎么生成海报,企业网站管理系统的设计与实现在 HTTP 协议中#xff0c;Content-Type 是一个非常关键的请求头字段#xff0c;它用于指示发送给接收方的数据类型。正确设置 Content-Type 对于前后端数据交互至关重要。 本文将详细介绍常见的 Content-Type 类型#xff0c;并结合 Vue 前端 和 Spring Boot 后端 的实际开…在 HTTP 协议中Content-Type 是一个非常关键的请求头字段它用于指示发送给接收方的数据类型。正确设置 Content-Type 对于前后端数据交互至关重要。 本文将详细介绍常见的 Content-Type 类型并结合 Vue 前端 和 Spring Boot 后端 的实际开发场景演示如何设置、传递参数以及后端如何接收这些参数。 一、什么是 Content-Type Content-Type 是 HTTP 请求或响应头中的一个字段用来指定消息体body的媒体类型MIME type。它的格式如下 Content-Type: media-type例如 Content-Type: application/json二、常见的 Content-Type 类型 类型MIME 类型描述application/jsonapplication/jsonJSON 格式数据现代 Web 开发中最常用的格式application/x-www-form-urlencodedapplication/x-www-form-urlencoded表单提交的标准格式键值对形式multipart/form-datamultipart/form-data上传文件时使用支持二进制文件和文本混合text/xml 或 application/xmltext/xml / application/xmlXML 格式数据application/octet-streamapplication/octet-stream二进制流数据常用于下载文件 三、不同 Content-Type 的使用场景与示例 1. application/json 使用场景 发送结构化数据如对象、数组前后端分离项目中常见 Vue 示例使用 axios import axios from axios;// 第一个请求 axios.post(/api/login, {username: admin,password: 123456 }, {headers: {Content-Type: application/json} });// 第二个请求 axios.post(/api/login2, id, {headers: {Content-Type: application/json} });Spring Boot 接收方式 RestController public class UserController {PostMapping(/login)public ResponseEntity? login(RequestBody User user) {return ResponseEntity.ok(Received: user.getUsername());}PostMapping(/login2)public ResponseEntity? login2(RequestBody Long id) {return ResponseEntity.ok(Received: id);}static class User {private String username;private String password;// getters and setters} }2. application/x-www-form-urlencoded 使用场景 HTML 表单默认提交方式不适合复杂嵌套结构 Vue 示例使用 qs 库序列化 npm install qsimport axios from axios; import qs from qs;const data qs.stringify({username: admin,password: 123456 });axios.post(/api/login, data, {headers: {Content-Type: application/x-www-form-urlencoded} });Spring Boot 接收方式 PostMapping(/login) public ResponseEntity? login(RequestParam String username, RequestParam String password) {return ResponseEntity.ok(Received: username); }或者使用 Map 接收多个参数 PostMapping(/login) public ResponseEntity? login(RequestParam MapString, String params) {return ResponseEntity.ok(Received: params.get(username)); }3. multipart/form-data 使用场景 文件上传包含文件和表单数据混合的情况 Vue 示例使用 FormData templateinput typefile changeuploadFile /templatescript import axios from axios;export default {methods: {uploadFile(event) {const file event.target.files[0];const formData new FormData();formData.append(file, file);axios.post(/api/upload, formData, {headers: {Content-Type: multipart/form-data}});}} }; /scriptSpring Boot 接收方式 PostMapping(/upload) public ResponseEntity? upload(RequestParam(file) MultipartFile file) {return ResponseEntity.ok(Received file: file.getOriginalFilename()); }如果同时传参和文件 // Vue 端添加额外字段 formData.append(username, admin);PostMapping(/upload) public ResponseEntity? upload(RequestParam(file) MultipartFile file,RequestParam(username) String username) {return ResponseEntity.ok(User: username , File: file.getOriginalFilename()); }4. application/octet-stream 使用场景 下载文件或传输原始二进制数据 Vue 示例Blob 数据 axios.get(/api/download, {responseType: blob }).then(response {const url window.URL.createObjectURL(new Blob([response.data]));const link document.createElement(a);link.href url;link.setAttribute(download, file.txt);document.body.appendChild(link);link.click(); });Spring Boot 返回方式 GetMapping(/download) public ResponseEntityResource downloadFile() throws IOException {Path path Paths.get(path/to/file.txt);Resource resource new UrlResource(path.toUri());return ResponseEntity.ok().header(HttpHeaders.CONTENT_DISPOSITION, attachment; filename\ resource.getFilename() \).body(resource); }四、总结对比表 Content-Type用途Vue 传参方式Spring Boot 接收方式application/json结构化数据直接传对象RequestBodyapplication/x-www-form-urlencoded表单数据qs.stringify()RequestParam, Mapmultipart/form-data文件上传FormDataMultipartFileapplication/octet-stream二进制数据responseType: blob返回 Resource 五、注意事项 JSON 格式必须严格符合语法规范否则后端无法解析。上传文件时不能使用 JSON必须使用 multipart/form-data。使用 FormData 时不要手动设置 Content-Type 浏览器会自动处理边界boundary。如果使用了全局拦截器或封装了 axios 实例请确保 headers 设置生效。 六、扩展其他 Content-Type 类型 类型说明text/plain纯文本text/htmlHTML 文档application/pdfPDF 文件image/jpeg, image/png图片格式video/mp4, audio/mpeg音视频格式 七、结语 掌握 Content-Type 是前后端交互的基础尤其在 Vue Spring Boot 架构下合理选择和设置 Content-Type 可以显著提升接口的健壮性和易用性。希望本篇文章能帮助你更清晰地理解不同类型的使用场景和实现方式。 如果你觉得这篇文章对你有帮助欢迎点赞、收藏或转发 相关阅读推荐 Vue Spring Boot 前后端交互实践正确使用 Content-Type: application/json 及参数传递方式 如有疑问或建议欢迎留言交流
http://www.dnsts.com.cn/news/186307.html

相关文章:

  • 马连洼网站建设建设行业门户网站
  • 网站开发接活长沙网站seo排名
  • 免费网站建设免代码wordpress 帖子权限
  • 网站升级正在升级维护建网站要先建什么
  • 无锡谁会建商务网站东莞房价走势
  • 电子商务网站问题与解决方案网站建设文案策划
  • 网站导航包括wordpress添加搜索引擎
  • 站内推广方式有哪些wordpress 插件安装在哪个文件夹
  • 洛阳建网站公司网站建设技术大全
  • 如何做国外外贸网站做网站下载那个数据库好
  • 做网站需要什么cailiaowordpress发布视频链接
  • 外贸网站建设平台有哪些高端产业园开发
  • 自助建设响应式网站甘肃两学一做网站
  • dede手机网站模版网站设计专业实验室建设
  • app开发网站建设公司南京seo圈子
  • 有关于网站建设的参考文献如何做一个网站赚钱
  • 做网站页面对PS切图本地生活服务平台
  • 微信菜单怎么做微网站网站建设服务宗旨
  • 新津县建设局网站做相册本哪个网站好用
  • 怎么把网站上传到空间自己做背景的网站
  • 上海做网站找哪家好android软件开发实例
  • 外汇跟单社区网站开发做电商网站的参考书
  • 昆明网站建设费用wordpress 51
  • 做网站点击量有用吗名者观看网站
  • 网站用的横幅广告怎么做双鱼儿 网站建设
  • 用ps做网站方法融资网站建设
  • 铜仁建设集团招聘信息网站南昌网站开发制作公司
  • 最短的网站关键词推广优化外包
  • 政协网站建设申请函推广渠道方式
  • 个人网站建设考察报告建设网站的价格表