前端正常传值即可
var app = new Vue({
el: "#app",
data: {
arr:[1,2,3]
},
mounted: function () {},
methods: {
post:function(){
var that=this
console.log(send)
axios({
url : '/main/send',
method: 'get',
params: {
array:that.arr
}
})
.then(function (res) {
res=res.data
console.log(res)
}, function (err) {
console.log(err)
that.$message({ type: 'error', message: '服务器忙,请稍后再试...' });
})
}
},
})
后端需要做到一下三点:
1.添加tomcat配置,使得传的url中可以出现’[’ 符号,写在Application类中即可:
/**
* 添加这部分代码使得url可以出现[ ]
*/
@Bean
public TomcatServletWebServerFactory webServerFactory() {
TomcatServletWebServerFactory factory = new TomcatServletWebServerFactory();
factory.addConnectorCustomizers(new TomcatConnectorCustomizer() {
@Override
public void customize(Connector connector) {
connector.setProperty("relaxedPathChars", "\"<>[\\]^`{|}()=");
connector.setProperty("relaxedQueryChars", "\"<>[\\]^`{|}()=");
}
});
return factory;
}
2.实现一个类,用来接收数组
package main;
import java.util.Arrays;
import java.util.List;
public class PictureArray {
Integer[] array;
public Integer[] getArray() {
return array;
}
public void setArray(Integer[] array) {
this.array = array;
}
@Override
public String toString() {
return "PictureArray{" +
"array=" + Arrays.toString(array) +
'}';
}
}
3.对应的Contoller函数的参数填上该类
@GetMapping("/send")
public Response send(PictureArray picture){
System.out.println(picture);
}