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

做网站开发的过程公司网站更新

做网站开发的过程,公司网站更新,盐城做网站spider net,做本地网站在前后端分离开发中#xff0c;前端通过 HTTP 请求与后端进行数据交互是常见的操作。其中#xff0c;Content-Type 是决定请求体格式的重要字段之一。本文将以一个具体的例子出发#xff0c;讲解如何在 Vue 前端 使用 Axios 发送 JSON 格式请求#xff0c;并在 Spring Boot…在前后端分离开发中前端通过 HTTP 请求与后端进行数据交互是常见的操作。其中Content-Type 是决定请求体格式的重要字段之一。本文将以一个具体的例子出发讲解如何在 Vue 前端 使用 Axios 发送 JSON 格式请求并在 Spring Boot 后端 正确接收参数。 我们将分析如下代码是否合理 axios.post(/api/login2, id, {headers: {Content-Type: application/json} });对应的后端接口为 PostMapping(/login2) public ResponseEntity? login2(RequestBody Long id) {return ResponseEntity.ok(Received: id); }一、整体结构是否正确 模块是否正确说明请求方式✅使用 axios.post 发送 POST 请求接口路径✅/api/login2 路径匹配后端 PostMapping(/login2)Content-Type 设置✅明确设置为 application/json后端接收方式✅使用 RequestBody Long id 正确接收 JSON 数据 ✅ 结论该写法在语法上是正确的可以正常工作。 二、详细分析前后端交互过程 1. 前端发送原始值作为请求体如数字或字符串 前端传入的是一个原始类型如 id 123Axios 会自动将其序列化为 JSON 字符串发送 123这是合法的 JSON 格式但不常见。通常我们更倾向于使用对象形式传递参数。 2. 后端接收原始值作为请求体 Spring Boot 支持将 JSON 的原始值绑定到基本类型或包装类例如 RequestBody Long id如果接收到的数据是 123Spring Boot 会成功将其转换为 Long 类型的变量。 三、潜在问题与建议 虽然上述写法在技术上可行但在实际项目开发中并不推荐。以下是几个需要注意的问题和改进建议 1. ❌ 不推荐使用原始值作为请求体 JSON 虽然允许直接传输原始值如 123、true、null但这不符合 RESTful API 设计规范也不利于后期维护和扩展。 ✅ 更推荐的做法使用对象形式传递参数 const id 123;axios.post(/api/login2, { id });此时发送的数据为 {id: 123 }对应地后端也应该改为接收一个对象 public class LoginRequest {private Long id;// getter and setter }PostMapping(/login2) public ResponseEntity? login2(RequestBody LoginRequest request) {return ResponseEntity.ok(Received ID: request.getId()); }这样不仅结构清晰也便于未来添加更多字段。 2. ⚠️ 注意类型一致性 如果前端传入的是字符串 123而后端期望的是 Long可能会抛出类型转换异常。建议统一使用 String 类型或者确保数值在 Long 范围内。 3. ✅ Axios 默认已设置 Content-Type: application/json 如果你没有手动配置 transformRequest 或其他拦截器Axios 在发送对象时会默认设置 Content-Type: application/json因此你可以简化请求为 axios.post(/api/login2, { id });除非你想覆盖默认行为比如上传文件等否则无需手动设置。 四、最终推荐写法最佳实践 前端 Vue Axios 示例 const id 123;axios.post(/api/login2, { id }).then(response {console.log(response.data); // 输出Received ID: 123}).catch(error {console.error(Error:, error);});后端 Spring Boot 示例 // DTO 对象 public class LoginRequest {private Long id;public Long getId() {return id;}public void setId(Long id) {this.id id;} }// 控制器 RestController public class AuthController {PostMapping(/login2)public ResponseEntityString login2(RequestBody LoginRequest request) {return ResponseEntity.ok(Received ID: request.getId());} }五、总结对比表 写法前端示例后端接收方式是否推荐原始值传参axios.post(url, 123)RequestBody Long id⚠️ 可行但不推荐对象传参推荐axios.post(url, { id })RequestBody LoginRequest✅ 推荐结构清晰使用 Map 接收同上RequestBody MapString, Object✅ 灵活但类型不安全使用 RequestParam-RequestParam Long id❌ 不适用于 JSON 请求体 六、结语 虽然 RequestBody Long id 和原始值传参在技术上是可行的但从可维护性、可读性和项目规范角度出发我们强烈建议使用对象形式传递参数。这不仅符合现代 Web 开发的最佳实践也有助于团队协作和接口文档的生成如 Swagger。 希望本文能帮助你更好地理解前后端交互中 Content-Type 的作用以及参数传递的正确方式。 相关阅读推荐 HTTP 请求中的 Content-Type类型详解及前后端示例Vue Spring Boot 如有疑问或建议欢迎留言交流
http://www.zqtcl.cn/news/885611/

相关文章:

  • 做的网站没有注册国家建设部网站倪虹
  • 中英文网站怎么实现做网站有名的公司
  • 先网站开发后软件开发显示网站运行时间代码
  • 品牌网站制作流程图百度网页版入口页
  • 哪些人需要做网站网站开发工程师 招聘
  • 东莞网站建设多长时间如何将网址提交到一些权重比较高的网站
  • 阳江网站seo公司wordpress建站博客
  • 我想做京东网站淘宝怎么做的wordpress淘宝联盟转链
  • 虚拟钱包对接网站开发视频教程营销型网站建设要懂代码吗
  • 莱州教育网站一站式网站搭建
  • 开发网站开票名称是什么捕鱼游戏网站开发商
  • 我国中小企业网站建设怎样办自己的网站
  • 如何推广自己网站链接通化北京网站建设
  • 小型的游戏网站怎么做WordPress设置作者信息
  • 网站建设师要求关键词优化排名易下拉排名
  • 网站建设步骤及推广方法做网站的公司叫什么
  • 怎么建立自己网站 asp网站做视频流量赚钱
  • 全屏网站宽度域名服务器怎么设置
  • 网站图片切换js代码金融公司网站方案
  • 企业网站开发步骤开源软件开发
  • 建设项目环境影响登记表备案系统网站签署网站建设协议新闻
  • 有的网站在浏览器打不开怎么办最近中国新闻热点大事件
  • 网站模板组件随州网站建设有哪些
  • 网站建设微信版8080端口wordpress
  • 急求聊城网站建设微信网页注册入口
  • 商城网站建站程序网站内链布局
  • 盐城网站建设方案全景旅游网站项目建设
  • 网站备案完电信园林效果图网站
  • 伤豆丁文库网站开发贵州网站备案局
  • 做网站的注意什么北京建设协会网站首页