gpt4 book ai didi

json - 如何通过传递变量(参数)获取api数据?

转载 作者:IT王子 更新时间:2023-10-29 06:54:13 24 4
gpt4 key购买 nike

我正在获取体育运动员的 api 数据,我需要为其传递唯一的 player id。目前,我必须手动传递 pid 一次只能获取一个玩家的数据。但我想获取多个播放器数据并将其显示在 listView 中。

API 端点是:https://cricapi.com/api/playerStats?apikey=&pid=0000 .

我能够解析上面的 url,获取它的结果并正确显示在 UI 中,但我想获取多个播放器数据,而不仅仅是一个。

获取api的代码:

FetchJson() async {
var response = await http.get('https://cricapi.com/api/playerStats?
apikey=&pid=1111');

if (response.statusCode == 200) {
String responseBody = response.body;
var responseJson = jsonDecode(responseBody);
name = responseJson['name'];
playingRole = responseJson['playingRole'];
battingStyle = responseJson['battingStyle'];
country = responseJson['country'];
imageURL = responseJson['imageURL'];

Json 片段是:

{ "pid": 1111, "country": "Australia", "profile": "\n\n blah", "imageURL": "https://www.cricapi.com/playerpic/1111.jpg",

我想要实现的是,动态显示多个玩家的个人资料,而不是在代码中传递硬编码的 pid,这样 UI 就会在 listview 中显示多个玩家.

如何在 url 端点动态传递不同的 pid

最佳答案

通过使用 String 插值并接收 id 作为参数。您可以阅读更多相关信息 here .

FetchJson(int playerId) async {
var response = await http.get('https://cricapi.com/api/playerStats?
apikey=&pid=$playerId');

if (response.statusCode == 200) {
String responseBody = response.body;
var responseJson = jsonDecode(responseBody);
name = responseJson['name'];
playingRole = responseJson['playingRole'];
battingStyle = responseJson['battingStyle'];
country = responseJson['country'];
imageURL = responseJson['imageURL'];

关于json - 如何通过传递变量(参数)获取api数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53944759/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com