ー
2021-01-03 04:36
采纳率: 100%
浏览 88
已采纳

Vue框架的axios,为什么访问不到Java后端?

前端是Vue+ElementUI

后端是Java SptringBoot

这是前端代码

    <el-row>
      <el-button @click="gotoHelloWorld">跳转到HelloWorld页面</el-button>
    </el-row>

            gotoHelloWorld() {
              let postData = this.qs.stringify({
                testid: this.testid
              });
              this.axios({
                method: 'post',
                url: '/hw',
                data: postData
              }).then(response => {
                this.testid = response.data;
              }).catch(error => {
                console.log(error);
              })
            }

这是后端代码

	@RequestMapping("/hw")
	@ResponseBody
	public String Hw() {

		System.out.println("Test");

		String rv = "";

		List<Test> resultList = null;
		resultList = LeanCloudHelper.findAVObject();

		rv = resultList.get(0).getId();

		System.out.println(rv);

		return rv;

	}

前端的按钮按完后,后端的代码并没有执行

请问是哪里错了?

  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

4条回答 默认 最新

  • 放风喽 2021-01-03 18:26
    已采纳

    额,大意了。

    没注意axios不封装的情况下,需要完整的url。

    建议你封装一下axios。

    打赏 评论
  • 放风喽 2021-01-03 15:24

    那个axios里面的data,就是一个js对象。不需要Json转化

     

    打赏 评论
  •  ー 2021-01-03 18:07

    前台按钮按下后,后台的Java方法根本没执行

    打赏 评论
  •  ー 2021-01-03 18:15

    在main.js进行如下设置后,成功访问Java代码

     

    axios.defaults.baseURL = 'http://localhost:8080/'
    打赏 评论

相关推荐 更多相似问题