使用firebase云函数将数据发布到elasticsearch,而不使用请求包模块

7z5jn7bk  于 2021-07-13  发布在  ElasticSearch
关注(0)|答案(0)|浏览(163)

我正在使用云函数将数据发布到elasticsearch,我正在使用请求包将请求发布到elasticsearch,它运行良好。但是由于请求包模块现在已经被弃用了,所以我想不出现在该怎么做。以下是我使用的函数:

exports.indexCategoriesToElastic = functions.firestore.document('categories/{docID}')
    .onWrite((change, context) => {
        let categoryData = change.after.data();
        let catId   = context.params.docID;

        let elasticSearchConfig = functions.config().elasticsearch;
        let elasticSearchUrl = elasticSearchConfig.url + 'categories/_doc/' + catId;
        let elasticSearchMethod = categoryData ? 'POST' : 'DELETE';

        let elasticsearchRequest = {
            method: elasticSearchMethod,
            uri: elasticSearchUrl,
            auth: {
                username: elasticSearchConfig.username,
                password: elasticSearchConfig.password,
            },
            body: categoryData,
            json: true
        };

        return request(elasticsearchRequest).then(response => {
            console.log('Elasticsearch response', response);
        })
});

我尝试使用axios和node fetch,但两者都需要指定url和方法(在axios中)。
有谁能指导我如何在不更改代码的情况下切换到其他软件包吗?
如果需要其他细节,请告诉我。
谢谢。

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题