解决vue 问题 post 请求发送 会变成发送get请求

如题所述

第1个回答  2022-07-07

eg:
原本路由:
http://localhost:8080/login_phone?phoneNum=13259964092
想要跳转到 : http://localhost:8080/#/home
但是实际上却跳转到:
http://localhost:8080/login_phone?phoneNum=13259964092#/home

遍寻全网找解决方法,依然没得结果,然后找到一个好像是问题的原因:
vue-router 默认 hash 模式 —使用 URL 的 hash 来模拟一个完整的 URL,于是当 URL 改变时,页面不会重新加载,对于正常的页面来说,更换 url 一定是会导致页面的更换的, 而只有更换 url 中的查询字符串和hash值的时候才不会重新加载页面。

所以解决方法就是去掉了hash模式,就是下面这句,在router文件中添加 mode:'history' 。
个人感觉这不是个好方法,但是它的确解决了问题。那就这样吧!

ps: 后来发现原因是 form表单的默认提交,但是如果不去处理,post 请求的时候,会发出一个get请求。 很大的bug!!! 之前一直不知道原因,真是让人头大。

其实,这也不算一个问题,而是算自己的一个bug,之前一直存在,不知道是问什么,后来才发现是 form的默认提交 问题。
解决方法:

总有很多的bug, 我好难啊!

相似回答