【发布时间】:2020-09-19 03:59:50
【问题描述】:
我正在尝试使用我在 GCP 上构建的云功能,如下所示。目标是获取包含时间戳、图像和源的 JSON,这些 JSON 将被转换为 Map 对象。 SourceController、datetime 和 _imageUrl 是输出,输入应该是 url 函数参数:
parser(String url) async {
var function_url = <CLOUD FUNCTION URL>;
try {
var request = await HttpClient.getUrl(Uri.parse(function_url));
var response = await request.close();
if (response.statusCode == HttpStatus.ok) {
var json = await response.transform(utf8.decoder).join();
Map data = jsonDecode(json) as Map;
sourceController = data['source'];
publishedAt = data['datetime'];
_imageUrl = data['image'];
} else {
print('Error running parser:\nHttp status ${response.statusCode}');
}
} catch (exception) {
print('Failed invoking the parser function.');
}
尽管将请求的数据类型更改为动态、var 等,但我不断收到以下错误。
Instance member 'getUrl' can't be accessed using static access
我非常感谢有关 getUrl 为什么不起作用的一些帮助,尽管我已经检查了其他可以正常工作的代码。
另外,我不明白我们应该在哪里将参数传递给我们的云函数?
另外,如果有涉及 cloud_functions 包的解决方案,我也可以 - 我也尝试过这种方法,但也没有运气。
【问题讨论】:
标签: firebase flutter dart google-cloud-platform google-cloud-functions