【发布时间】:2021-09-09 12:01:23
【问题描述】:
我正在使用这段代码通过正文发出删除请求:
Future deleteAcc(data) async {
Map<String, String> headers = {
"Content-Type": "application/json",
'Authorization': '$token'
};
print('In Provider');
final url = Uri.parse('$baseUrl$deleteUser');
final req = http.Request("DELETE", url);
req.headers.addAll(headers);
req.body = jsonEncode(data);
final resp = await req.send();
return await resp.stream.bytesToString();
}
在函数调用中我想访问响应消息,通常我这样访问它:
await _bloc.deleteAcc(data).then((value) {
print(value.message);
});
但是当我在这个请求中使用它时,我收到了这个错误消息:
E/flutter ( 5868): [ERROR:flutter/lib/ui/ui_dart_state.cc(199)] Unhandled Exception: NoSuchMethodError: Class 'String' has no instance getter 'message'.
E/flutter ( 5868): Receiver: "{\"code\":711,\"message\":\"list removed successfully\"}"
E/flutter ( 5868): Tried calling: message
请帮忙解决这个问题?
【问题讨论】:
-
尝试 print(value) 显然 value 是一个字符串,而不是本身具有消息字段的对象类型
-
@Muhtar 那么我如何从响应中访问消息或代码??
标签: flutter http dart request http-delete