我试图使用外部API,但它返回一个错误,我不理解。
这是代码:
访问API-(https://swapi.dev/)-这是我的控制器问题出在哪里
如果我没有错,看起来您正在尝试将String
(字符串类型)值分配给声明为String[]
(字符串数组类型)的变量。
您定义以下类
public class Filme {
//... other attributes
private String characters;
//...
// the following getter returns an `String` which is correct because attribute
// `character` is declared as a `String`
public String getCharacters() {
return characters;
}
//... other setters and getters
}
然后,当您从服务中获取Filme
数组时,您正在尝试将属性字符
(String)分配给变量人物
(String[])
// personagens is of type `String[]` (array of String)
// mean while `filme.getCharacters()` return a `String` (a String)
String[] personagens = filme.getCharacters()
根据您正在使用的endpoint的文档,它说字符
是一个数组
。因此,将该属性作为String获取是可以的,当您尝试从json反序列化为对象时,但在应用的逻辑中,您正在尝试迭代它。因此,我认为您真正想要做的是将字符
属性的类型从String
更改为String[]
。之后,您需要修复该属性的getter的返回类型