在我的代码中有一个文本字段,可以键入名称,然后单击按钮,应该传递到http URL,然后应该从该URL获得“用户ID”。
按钮代码
Future<void> onJoin() async {
setState(() {
myController.text.isEmpty
? _validateError = true
: _validateError = false;
});
Navigator.push(
context,
MaterialPageRoute(builder: (context) => loadData(myController.text)),
);
}
从http url获取“用户ID”
loadData(String myController) async {
var userID = "";
try {
final uri =
Uri.parse('http://github.users.com/$myController');
final response = await http.get(uri);
if (response.userID != null) {
print("userID : " + userID);
}
} catch (e) {
print("Invalid name entered ");
}
}
如果成功检索userId,则应打印,如果为空,则应显示“输入的名称无效“。
错误
2条答案
按热度按时间y4ekin9u1#
请尝试以下代码:
pepwfjgg2#
response.body是一个编码的json,这就是为什么你会得到
因此请解码响应正文,如下所示