Dart 获取_\dhashmap<;字符串,动态>';不是类型为';未来者<;回应>';
我是Dart/FLUTRAT方面的新手,我正试图获得一个未来使用Web服务的结果:Dart 获取_\dhashmap<;字符串,动态>';不是类型为';未来者<;回应>';,dart,flutter,Dart,Flutter,我是Dart/FLUTRAT方面的新手,我正试图获得一个未来使用Web服务的结果: Future<Map> _readData() async { (...) http.Response response = await http.post( request, headers: { "SOAPAction": "http://www.totvs.com/IwsConsultaSQL/RealizarConsultaSQL", "Co
Future<Map> _readData() async {
(...)
http.Response response = await http.post(
request,
headers: {
"SOAPAction": "http://www.totvs.com/IwsConsultaSQL/RealizarConsultaSQL",
"Content-Type": "text/xml;charset=UTF-8",
"Authorization": "Basic bWVzdHJlOnRvdHZz",
"cache-control": "no-cache"
},
body: utf8.encode(requestBody),
encoding: Encoding.getByName("UTF-8")
).then((onValue){
(...)
var dataFinal = jsonDecode(jsondataFinal);
return dataFinal ;
});
我总是遇到这样的例外:
_InternalLinkedHashMap<String, dynamic>' is not a subtype of type 'FutureOr<Response>'
\u InternalLinkedHashMap'不是“FutureOr”类型的子类型
你知道我做错了什么吗
谢谢此错误是否与此代码一起出现
Future<Map> _readData() async {
//...
http.Response response = await http.post(
request,
headers: {
"SOAPAction": "http://www.totvs.com/IwsConsultaSQL/RealizarConsultaSQL",
"Content-Type": "text/xml;charset=UTF-8",
"Authorization": "Basic bWVzdHJlOnRvdHZz",
"cache-control": "no-cache"
},
body: utf8.encode(requestBody),
encoding: Encoding.getByName("UTF-8")
);
//...
var dataFinal = jsonDecode(jsondataFinal);
return dataFinal ;
}
Future\u readData()异步{
//...
http.Response-Response=等待http.post(
要求
标题:{
“SOAPAction”:http://www.totvs.com/IwsConsultaSQL/RealizarConsultaSQL",
“内容类型”:“text/xml;charset=UTF-8”,
“授权”:“基本bWVzdHJlOnRvdHZz”,
“缓存控制”:“无缓存”
},
正文:utf8.encode(请求正文),
编码:encoding.getByName(“UTF-8”)
);
//...
var dataFinal=jsonDecode(jsondataFinal);
返回最终数据;
}
此错误是否与此代码一起出现
Future<Map> _readData() async {
//...
http.Response response = await http.post(
request,
headers: {
"SOAPAction": "http://www.totvs.com/IwsConsultaSQL/RealizarConsultaSQL",
"Content-Type": "text/xml;charset=UTF-8",
"Authorization": "Basic bWVzdHJlOnRvdHZz",
"cache-control": "no-cache"
},
body: utf8.encode(requestBody),
encoding: Encoding.getByName("UTF-8")
);
//...
var dataFinal = jsonDecode(jsondataFinal);
return dataFinal ;
}
Future\u readData()异步{
//...
http.Response-Response=等待http.post(
要求
标题:{
“SOAPAction”:http://www.totvs.com/IwsConsultaSQL/RealizarConsultaSQL",
“内容类型”:“text/xml;charset=UTF-8”,
“授权”:“基本bWVzdHJlOnRvdHZz”,
“缓存控制”:“无缓存”
},
正文:utf8.encode(请求正文),
编码:encoding.getByName(“UTF-8”)
);
//...
var dataFinal=jsonDecode(jsondataFinal);
返回最终数据;
}
不能同时使用wait和then。您的代码应该如下所示
Future<Map> _readData() async {
(...)
http.Response response = await http.post(
request,
headers: {
"SOAPAction": "http://www.totvs.com/IwsConsultaSQL/RealizarConsultaSQL",
"Content-Type": "text/xml;charset=UTF-8",
"Authorization": "Basic bWVzdHJlOnRvdHZz",
"cache-control": "no-cache"
},
body: utf8.encode(requestBody),
encoding: Encoding.getByName("UTF-8")
);
var dataFinal = jsonDecode(response.body);
return dataFinal ;
}
Future\u readData()异步{
(...)
http.Response-Response=等待http.post(
要求
标题:{
“SOAPAction”:http://www.totvs.com/IwsConsultaSQL/RealizarConsultaSQL",
“内容类型”:“text/xml;charset=UTF-8”,
“授权”:“基本bWVzdHJlOnRvdHZz”,
“缓存控制”:“无缓存”
},
正文:utf8.encode(请求正文),
编码:encoding.getByName(“UTF-8”)
);
var dataFinal=jsonDecode(response.body);
返回最终数据;
}
不能同时使用wait和then。您的代码应该如下所示
Future<Map> _readData() async {
(...)
http.Response response = await http.post(
request,
headers: {
"SOAPAction": "http://www.totvs.com/IwsConsultaSQL/RealizarConsultaSQL",
"Content-Type": "text/xml;charset=UTF-8",
"Authorization": "Basic bWVzdHJlOnRvdHZz",
"cache-control": "no-cache"
},
body: utf8.encode(requestBody),
encoding: Encoding.getByName("UTF-8")
);
var dataFinal = jsonDecode(response.body);
return dataFinal ;
}
Future\u readData()异步{
(...)
http.Response-Response=等待http.post(
要求
标题:{
“SOAPAction”:http://www.totvs.com/IwsConsultaSQL/RealizarConsultaSQL",
“内容类型”:“text/xml;charset=UTF-8”,
“授权”:“基本bWVzdHJlOnRvdHZz”,
“缓存控制”:“无缓存”
},
正文:utf8.encode(请求正文),
编码:encoding.getByName(“UTF-8”)
);
var dataFinal=jsonDecode(response.body);
返回最终数据;
}
您不必同时使用等待
和然后
。好的,但这不是问题:D,我会调整这个,但即使没有等待,也会给我同样的错误。您不必同时使用等待
和然后
。好的,但这不是问题:D,我会调整这个,但即使没有等待,也会给我同样的错误。