Как я могу использовать веб-поиск Bing Apiv7 для получения фотографий в приложении флаттера?
Я получил API и конечные точки с официального сайта, но мне не удалось получить файл JSON, чтобы вызвать его в элементедочерний конструктор.
пример дочернего процесса: new Image.network('${data['value']['webSearchUrl']}'
Я не знаю, что добавить в этот дочерний элемент и куда поместить ключ API ...
class _PageOneState extends State<PageOne> {
@override
Widget build(BuildContext context) {
return Scaffold(
body: new FutureBuilder(
future: getPics(),
builder: (context, snapShot){
Map data = snapShot.data;
if(snapShot.hasError){
print(snapShot.error);
return Text('Failed to get data from server',
style: TextStyle(color: Colors.red,
fontSize: 22.0),);
}else if(snapShot.hasData){
return new Center(
child: new ListView.builder(
itemCount: data.length,
itemBuilder: (context, index){
return new Column(
children: <Widget>[
new Container(
child: new InkWell(
onTap: (){},
child: new Image.network(
'${data['value']['webSearchUrl']}'
),
),
),
new Padding(padding: const EdgeInsets.all(5.0)),
],
);
}),
);
}
else if(!snapShot.hasData){
return new Center(child: CircularProgressIndicator(),);
}
}
),
);
and below the code -
Future<Map> getPics() async{
String url =
'https://api.cognitive.microsoft.com/bing/v7.0/images';
http.Response response = await http.get(url);
return json.decode(response.body);
}