我希望不能将数据从颤振模拟器发布到数据库。这是在运行模拟器并输入数据后得到的错误。
已发生异常。FormatException (FormatException:意外字符(在字符1处)^)
这是我的api.dart导入的‘省:转换’;
import 'package:http/http.dart' as http;
import 'package:shared_preferences/shared_preferences.dart';
class CallApi{
final String _url = 'http://10.2.2.0/voyceb/api/';
postData(data, apiUrl) async {
var fullUrl = _url + apiUrl + await _getToken();
return await http.post(
fullUrl,
body: jsonEncode(data),
headers: _setHeaders()
);
}
getData(apiUrl) async {
var fullUrl = _url + apiUrl + await _getToken();
return await http.get(
fullUrl,
headers: _setHeaders()
);
}
_setHeaders() => {
'Content-type' : 'application/json',
'Accept' : 'application/json',
};
_getToken() async {
SharedPreferences localStorage = await
SharedPreferences.getInstance();
var token = localStorage.getString('token');
return '?token=$token';
}
}部分显示在signup.dart中的错误
var res = await CallApi().postData(data, 'register');
var body = json.decode(res.body);错误显示在
json.decode(res.body);
在json.decode。
当我输入模拟器时,我希望将数据插入数据库。
发布于 2019-08-19 04:52:30
也许JSON的编码和解码过程有问题。
你可以用这个解决这个问题
var res = await CallApi().postData(data, 'register');
var encodeFirst = json.encode(res.body);
var data = json.decode(encodeFirst);https://stackoverflow.com/questions/57550605
复制相似问题