Java 使用axios传递包含数组的typescript对象

Java 使用axios传递包含数组的typescript对象,java,arrays,typescript,axios,Java,Arrays,Typescript,Axios,我有一个typescript对象,它的一个字段是字符串数组。我想通过axios将其传递到我的java后端。以这种方式初始化阵列时: var numbers = ["1", "2", "3"]; var numbers = new Array(); // or just var numbers = []; 它正确地通过了。但当我以这种方式初始化它时: var numbers = ["1", "2

我有一个typescript对象,它的一个字段是字符串数组。我想通过axios将其传递到我的java后端。以这种方式初始化阵列时:

var numbers = ["1", "2", "3"];
var numbers = new Array();      // or just var numbers = [];
它正确地通过了。但当我以这种方式初始化它时:

var numbers = ["1", "2", "3"];
var numbers = new Array();      // or just var numbers = [];
然后使用以下命令在循环的中添加元素:

numbers.push("some string");
我在java代码中得到空数组。。。 对我来说,另一件有关联的事情是,当我以第一种方式初始化数组,然后在for循环中添加元素时,在java中,我只能检索这些静态值

这就是我提出API请求的方式:

public create(entity: IMessage, numbers: String[]): Promise<IMessage> {
 return new Promise<IMessage>((resolve, reject) => {
  entity.user = accountStore.state.userIdentity;
  entity.date = new Date();
      
  var dto = new MessageDTO(entity.id, entity.name, entity.content, entity.date, entity.user, numbers);
       
  axios
   .post(`${baseApiUrl}`, dto)
   .then(res => {
    resolve(res.data);         
  })
  .catch(err => {
    reject(err);
  });
 });
}
公共创建(实体:IMessage,数字:String[]):承诺{ 返回新承诺((解决、拒绝)=>{ entity.user=accountStore.state.userIdentity; entity.date=新日期(); var dto=新消息dto(entity.id、entity.name、entity.content、entity.date、entity.user、number); axios .post(`${baseapirl}`,dto) 。然后(res=>{ 解析(res.data); }) .catch(错误=>{ 拒绝(错误); }); }); }
好的,我设法解决了这个问题

用于填充数组的数据来自外部文件。我使用的是FileReader及其onload函数。我的错误是在数组填充之前请求API


很抱歉打扰您。

好的,我设法解决了这个问题

用于填充数组的数据来自外部文件。我使用的是FileReader及其onload函数。我的错误是在数组填充之前请求API

很抱歉打扰您。

该数组如何进入您的Java代码?给出一个例子,你没有理由看到你所展示的两个选项的不同结果。请回答这个问题,作为一个注释,这几乎是不可读的。这个数组是如何进入你的Java代码的?给出一个答案,你没有理由看到你所展示的两个选项的不同结果。请回答这个问题,作为一个评论,这几乎是不可读的。