【问题标题】:How to push data to my index using algolia android如何使用 algolia android 将数据推送到我的索引
【发布时间】:2017-08-12 01:00:15
【问题描述】:

我在将数据推送到我的索引时遇到问题。我的代码如下:

Client client = new Client("APP_ID", "SEARCH_ID");

            Index myIndex = client.initIndex("test");
            JSONObject jsonObject = null;
            try {
                jsonObject = new JSONObject()
                        .put("name", "Jimmie")
                        .put("username", "Barninger")
            } catch (JSONException e) {
                e.printStackTrace();
            }
            myIndex.addObjectAsync(jsonObject, null);

但是什么也没发生,我的仪表板中也看不到任何数据。我做错了什么?

【问题讨论】:

  • 您好,能否请您显示您遇到的错误,以便我们更好地帮助您?
  • 您好,没有错误,只是没有推送数据对象
  • 为了调试,您能否将第二个参数null 替换为CompletionHandler 并在出现错误时结帐?如果是这样,请将错误复制粘贴到您的问题中
  • 抱歉,没明白你的意思
  • 在下面查看我的答案

标签: android algolia


【解决方案1】:

为了了解更多,请将addobjectAsync 行替换为如下内容:

index.addObjectAsync(object, new CompletionHandler() {
    @Override
    public void requestCompleted(JSONObject content, AlgoliaException error) {
        if (error != null) {
            // Check what is the error Here
        }
    }
}

【讨论】:

    【解决方案2】:

    我不得不更改以前为 SEARCH_ID 的 api 密钥。我把它改成了我的ADMIN_API_KEY

    Client client = new Client("APP_ID", "ADMIN_API_KEY");
    

    这是因为仅搜索 API 密钥只能用于搜索,而 Admin API 密钥可以更改、删除或添加对象。

    完整代码如下:

    Client client = new Client("APP_ID", "ADMIN_API_KEY");
    
        Index myIndex = client.initIndex("test");
    
        JSONObject object = null;
        try {
            object = new JSONObject()
                    .put("username", "Jimmie")
                    .put("name", "Barninger");
        } catch (JSONException e) {
            e.printStackTrace();
        }
       // myIndex.addObjectAsync(object, "myID", null);
        myIndex.addObjectAsync(object, "id", null);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-07-14
      • 1970-01-01
      • 2015-10-23
      • 2016-02-24
      相关资源
      最近更新 更多