作者:谢諭宥 | 来源:互联网 | 2022-12-04 10:48
我想知道是否有任何的方式来实现搜索功能Firestore
用Algolia
?
我搜索过Dart
但尚不支持.
那么,完全不可能或任何其他方式使它工作?
由于我在编程方面很新,有人请指导我正确的方法吗?
任何帮助都非常感谢.
1> 小智..:
你的问题有两个:
索引Firebase内容
要搜索Firestore中的内容,您必须将其发送到Algolia进行索引.通常你会从服务器或像这样的云功能那样做.
dart中没有示例,因为Dart没有服务器端Algolia库,所以如果你想使用Dart,你必须使用其余的API
如果您不需要使用Dart并且正在寻找一个简单的解决方案,您可以使用NodeJS或Python云功能来索引您的内容.
查询Algolia
是的,您可以使用他们的Rest API从Flutter查询Algolia,因为Dart中没有Algolia的客户端库.
它看起来像这样:
var uri = Uri.https(
'$your_app_id-dsn.algolia.net',
'/1/indexes/$your_index/query',
);
var headers = {
'X-Algolia-API-Key': your_api_key,
'X-Algolia-Application-Id': your_app_id,
};
var data = jsonEncode({
'query': your_query,
});
var request = await HttpRequest.request(
uri.toString(),
requestHeaders: headers,
method: 'POST',
sendData: data,
);
var json = request.responseText;
var hits = jsonDecode(json)['hits'] as List;