关于axios.js中的POST连接JAVA后台无法获取值,或者直接在JavaScript中拦截问题解决

news/2024/7/24 0:51:34 标签: axios.js

这个问题很久前就碰到了,那时候没那心情研究这个,但今天大晚上通宵研究这个问题,百度了一大堆。但是这些回答都是Feces,真的很烦,贴段代码就ok了。把完整代码发出来,让人跑跑,看看是否真的解决了,然后在一堆垃圾中,找答案。

 

 

为了解决这个问题,我自己在原有的项目,写了一个demo文件。

讲讲这个问题之所在吧,当我已axios的post送信时,JavaScript发送的数据就一直处理在Java后台得不到值,连方法都没进。一直报这个错误org.springframework.web.HttpRequestMethodNotSupportedException: Request method 'GET' not supported,看控制台的网络也是一直发送GET连接,而在消息头里确是POST连接,这个axios真的垃圾!!!

以下方式都不可实现接收值

                axios.post('/userUel', {
                    param: '1'
                }, {
                    // cancelToken: source.token
                })
    @ResponseBody
    @RequestMapping(value = "/getHobbys", method ={RequestMethod.POST})
    public Hobbys getHobbys( @RequestParam(value = "id",required = false) String id){
        System.out.println("-----------------------------");
        System.out.println("id:"+id);//结果   id:null
    }

 利用qs.js转json格式来传值,百度上全是这类,没用!

//这是.vue的使用,如果百度.js的方式实现,还是没用,后台得到的值空值
const qs = require('qs');
axios.post('/foo', qs.stringify({ 'bar': 123 }));

mport qs from 'qs';
const data = { 'bar': 123 };
const options = {
  method: 'POST',
  headers: { 'content-type': 'application/x-www-form-urlencoded' },
  data: qs.stringify(data),
  url,
};
axios(options)

真实有效,亲测没问题!

var app1=new Vue({
        el:'#app1',
        id:'1',
        created: function (){
            this.getHobbysAll(1);
        },
        methods: {
            getHobbysAll: function (id) {
                var str = '{"id":23}';
                console.log(str);
                const params = new URLSearchParams();
                params.append('id', '1');
                axios.post('http://localhost:8080/getHobbys', params).then(function (response) {
                    console.log("12345");
                    console.log(response);
                    console.assert(response!=null)
                    var arr = response.data;
                    console.log(arr)
                });

         
            }
        }
})

方便你们查阅,证明已解决。

百度云盘:链接:https://pan.baidu.com/s/189rLR36W8fH_evIgL_IQug 
提取码:010r

 


http://www.niftyadmin.cn/n/1638787.html

相关文章

ORA-12541: TNS: 无监听程序

以前Oracle没有任何问题,使用a5连接数据库也没有问题,突然今天不行了,每次都报这个,查了下原因。才发现,好像是上次电脑太卡了,手动关闭了后台运行程序,直接把Oracle主程序干没了。 后面重启都…

IJ000457,IJ000461

记录一下&#xff0c;JBoss的错误。 两个不同类型数据库创建链接,在查询某个表时&#xff0c;直接抛出异常。 解决方案还是百度的&#xff0c;加一个配置 jta“false” 在标签< datasource>里面加上这句话&#xff0c;画面没有挂掉&#xff0c;正常跑通。 standalone.xm…

PostgreSQL/Oracle全角空格替换

记录下SQL的trim方法&#xff0c;全角空格在两个数据库同时运作。 原SQL select * trim (chr(‘ ’) from 字段名&#xff09; as 字段名 from 表名&#xff1b; 新SQL select * trim&#xff08;chr&#xff08;33088&#xff09; from 字段名&#xff09;as 字段名 from 表…

a5m2数据库,pd.adsrc不存在

升级到2.15.1版本以上。a5数据库找不到PostgreSQL的pd.adsrc文件

JDK11对应新元号(令和)

环境配置 JBoss1.7 JDK11 增加配置 在standalone.conf.bat配置文件里&#xff0c;加上 set “JAVA_OPTS%JAVA_OPTS% -Djava.locale.providersCOMPAT,CLDR

解决IDEA的自动生成final的问题

首先百度上面任何方案都没有效果&#xff0c;什么各种设置等等&#xff0c;还有new一个对象然后取消掉Declare final.也没有任何作用&#xff0c;只要保存了代码&#xff0c;final就会莫名其妙的加上&#xff0c;后面我猜想一定是idea胡乱安装的插件的问题&#xff0c;果不其然…

eclipse光标变成小黑框,并且insert没有作用的解决方案

eclipse选中了初学者模式&#xff0c;backspace按钮也不会起作用。 有一个大写的V的图标&#xff0c;选中后任何代码的修改都无法进行。

设计模式(七大原则)理论知识

设计模式 使用场景 软件架构和程序设计 目的 1.提高代码的可重用性 2.提高代码的可读性 3.保障代码的可靠性 设计原则特点 1.可扩展性(Extensibility) 2.灵活性(Flexibility) 3.组件化可插拔式(Pluggability) 准则 单一职责原则&#xff1a;一个Java类存放的功能…