首页 > 其他分享 >2024年6月4日第六十二篇

2024年6月4日第六十二篇

时间:2024-06-04 18:58:16浏览次数:19  
标签:articles 第六十二篇 return response 2024 error article id

今天遇到了网络请求的问题因为我要发送一个多参数的post请求,发现不能使用@requestmapping,

于是我改为使用@PostMapping但是其中不包含参数@Requestparam只包含@RequestBody

导致问题迟迟无法解决,

最后我改为使用get请求,用@GetMapping用@RequestParam实现参数传递。

<template>
  <div>
    <h1>文章</h1>

    <ul id="articles">
      <li v-for="article in articles" :key="article.id">
        {{ article.title }} - {{ article.content }}
        <button @click="deleteArticle(article.id)">删除</button>
        <button @click="editArticle(article)">编辑</button>
      </li>
    </ul>

    <form @submit.prevent="createArticle">
      <input type="text" v-model="newArticle.title" placeholder="标题">
      <textarea v-model="newArticle.content" placeholder="内容"></textarea>
      <button type="submit">创建</button>
    </form>

    <form v-if="editArticleId" @submit.prevent="updateArticle">
      <input type="text" v-model="editArticle.title" placeholder="标题">
      <textarea v-model="editArticle.content" placeholder="内容"></textarea>
      <button type="submit">更新</button>
    </form>
  </div>
</template>

<script>
export default {
  data() {
    return {
      articles: [],
      newArticle: {
        title: '',
        content: ''
      },
      editArticleId: null,
      editArticle: null
    }
  },
  mounted() {
    this.getArticles();
  },
  methods: {
    getArticles() {
      axios.get('/api/articles')
        .then(response => {
          this.articles = response.data;
        })
        .catch(error => {
          console.error(error);
        });
    },
    createArticle() {
      axios.post('/api/articles', this.newArticle)
        .then(response => {
          this.articles.push(response.data);
          this.newArticle = { title: '', content: '' };
        })
        .catch(error => {
          console.error(error);
        });
    },
    deleteArticle(id) {
      axios.delete(`/api/articles/${id}`)
        .then(response => {
          this.articles = this.articles.filter(article => article.id !== id);
        })
        .catch(error => {
          console.error(error);
        });
    },
    editArticle(article) {
      this.editArticleId = article.id;
      this.editArticle = article;
    },
    updateArticle() {
      axios.put(`/api/articles/${this.editArticleId}`, this.editArticle)
        .then(response => {
          this.articles = this.articles.map(article => {
            if (article.id === this.editArticleId) {
              return response.data;
            } else {
              return article;
            }
          });
          this.editArticleId = null;
          this.editArticle = null;
        })
        .catch(error => {
          console.error(error);
        });
    }
  }
};
</script>

 

@RestController
@RequestMapping("/api/articles")
public class ArticleController {

  @Autowired
  private ArticleRepository articleRepository;

  @GetMapping
  public List<Article> getAllArticles() {
    return articleRepository.findAll();
  }

  @GetMapping("/{id}")
  public Article getArticleById(@PathVariable Long id) {
    return articleRepository.findById(id).orElseThrow(() -> new ResourceNotFoundException("Article not found: " + id));
  }

  @PostMapping
  public Article createArticle(@RequestBody Article article) {
    return articleRepository.save(article);
  }

  @PutMapping("/{id}")
  public Article updateArticle(@PathVariable Long id, @RequestBody Article article) {
    article.setId(id);
    return articleRepository.save(article);
  }

  @DeleteMapping("/{id}")
  public void deleteArticle(@PathVariable Long id) {

 

标签:articles,第六十二篇,return,response,2024,error,article,id
From: https://www.cnblogs.com/xuechenhao173/p/18231492

相关文章

  • 2024年云计算、信号处理与网络技术国际学术会议(ICCCSPNT 2024)
    2024年云计算、信号处理与网络技术国际学术会议(ICCCSPNT2024)2024InternationalAcademicConferenceonCloudComputing,SignalProcessing,andNetworkTechnology(ICCCSPNT2024)会议简介:2024年云计算、信号处理与网络技术国际学术会议(简称ICCCSPNT2024)是一个集结了......
  • 2024年5月信息系统项目管理师(高级)考试综合知识真题及参考答案
    1、关于项目可行性研究的描述不正确的是()A.初步可行性研究报告,必须包含项目的主要投资支出B.初步的可行性研究报告可作为正式文件,支持项目决策C.初步可行性研究报告的核心内容不包括项目进度安排D.初步可行性研究是详细可行性研究的基础[参考答案]C2、信息系统战略......
  • 骑行无界,勇者无限!2024COSP上海国际户外展带您畅享生活的速度与激情!
    随着夏日来临,越来越多的人选择借由“绿色骑行”去触碰一座城市的脉搏,“城市骑行”正在成为时尚潮流活动和生活休闲方式。对于一部分城市打工人来说,自行车是一种通勤的工具,骑行成为健身的新选择。在小红书里输入“骑行”,大约有280万+笔记,“骑行路线”“骑行装备”“骑行穿搭”......
  • 2024.05.19校招 实习 内推 面经
    绿*泡*泡VX:neituijunsir  交流*裙,内推/实习/校招汇总表格1、自动驾驶一周资讯-理想传裁员传闻;广汽本田大规模裁员;小米SU7完成第10000辆交付,雷军:确保今年交付10万台https://mp.weixin.qq.com/s/rsavPRAm8Df-1IcezbZQ3Q2、实习|长安福特&长安福特新能源2024暑期实......
  • 2024年化学材料、清洁能源与生物技术国际学术会议(ICCMCEB2024)
    2024年化学材料、清洁能源与生物技术国际学术会议(ICCMCEB2024)会议简介2024国际化学材料、清洁能源和生物技术大会(ICCMCEB2024)将在长沙隆重举行。本次会议旨在汇聚来自世界各地的化学材料、清洁能源和生物技术领域的专家学者,共同探讨行业前沿技术和发展趋势。会议将涵盖......
  • 2024年公共事务管理与社会服务国际会议(ICPAMSS2024)
    2024年公共事务管理与社会服务国际会议(ICPAMSS2024)会议简介2024国际公共事务管理与社会服务会议(ICPAMSS2024)将在广州隆重举行。本次盛会诚挚邀请来自世界各地的公共事务管理和社会服务领域的专家、学者和从业者齐聚一堂,探索行业发展前沿,分享实践经验,推动理论创新。会议将......
  • 2024年生命科学、基础医学与微生物学国际会议(ICLSBMM2024)
    2024年生命科学、基础医学与微生物学国际会议(ICLSBMM2024)会议简介2024生命科学、基础医学和微生物学国际会议(ICLSBMM2024)将在深圳隆重举行。本次会议汇集了来自世界各地的顶尖专家和学者,讨论生命科学、基础医学和微生物学领域的最新研究成果和发展趋势。会议将涵盖基因......
  • 屏幕录制工具分享6款,附上详细电脑录屏教程(2024全新)
    当你即将参加一个重要的在线会议或一堂关键的直播课,但又担心错过关键点或无法及时做笔记时,屏幕录制无疑是最好的方法之一。屏幕录制是一项非常有价值的技能,它能让你出于各种目的捕捉屏幕上的活动。无论你的目的是创建教程、演示软件功能、捕捉游戏画面,还是仅仅分享你的桌面操作......
  • 2024年百度之星 初赛 第一场
    Preface周末紧张刺激的两连赛,周六打完篮球杯后周日就要打百度之星的第一场省赛由于第二场时间和四川省赛冲突了,第三场时间又在考试前一天,比较阴间,想着最好是一次打进决赛节省点钱和时间虽然学校不报销去北京决赛的钱,但转念一想反正XCPC也都不报销也差不了多少,去北京旅个游也未......
  • 华为OD机试2024年最新题库(Python、JAVA、C、C++合集)C卷+D卷
    介绍博主介绍:CSDN领军人物top1的作者,全网粉丝30w+,文章累计被阅读3800w+,直接帮助200+,间接帮助800+同学进入od添加或私信博主免费获取本题解析以及代码24年5月份开始,考的都是OD统一考试(D卷),题库已经整理好了,命中率95%以上。5-10月份考的都是D卷真题,都是原题,圈内有多种......