当另一个响应成功完成时,如何触发响应



我正在从一个响应数据中获取另一个响应的链接。我该如何等待完成第一个响应?

Response responsePostImage =
await dio.get("responseLink$imgId");
var parsedPostImage = jsonDecode("$responsePostImage");
blogModel.imagePostImage =
parsedPostImage["media_details"]["sizes"]["medium"]["source_url"];
var parsedPpp = parsedPostImage["_links"]["author"];
blogModel.imagePpUrl = parsedPpp[0]["href"];
Response responseGetPp = await dio.get(blogModel.imagePp);
var parsedGetPp = jsonDecode("$responseGetPp");
blogModel.imagePp = parsedGetPp["avatar_urls"]["48"];
print(parsedGetPp["avatar_urls"]["48"]);

我认为您可以检查http响应成功状态代码(200(,然后调用下一个api。

Response responsePostImage = await dio.get("responseLink$imgId");
if(responsePostImage.statusCode == 200) {
var parsedPostImage = jsonDecode("$responsePostImage");
blogModel.imagePostImage = parsedPostImage["media_details"]["sizes"]["medium"]["source_url"];
var parsedPpp = parsedPostImage["_links"]["author"];
blogModel.imagePpUrl = parsedPpp[0]["href"];

Response responseGetPp = await dio.get(blogModel.imagePp);
if(responseGetPp.statusCode == 200) {
var parsedGetPp = jsonDecode("$responseGetPp");
blogModel.imagePp = parsedGetPp["avatar_urls"]["48"];
print(parsedGetPp["avatar_urls"]["48"]); 
}
}

最新更新