颤抖 - 到目前为止,使用Algolia在Firestore中实现搜索功能是不可能的?

Two*_*San 3 dart algolia flutter

我想知道是否有任何的方式来实现搜索功能FirestoreAlgolia
我搜索过Dart但尚不支持.
那么,完全不可能或任何其他方式使它工作?
由于我在编程方面很新,有人请指导我正确的方法吗?
任何帮助都非常感谢.

Flo*_*rth 7

你的问题有两个:

索引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;
Run Code Online (Sandbox Code Playgroud)