试图用axios连接到elasticsearch

时间:2017-09-14 09:49:49

标签: javascript elasticsearch vue.js axios

我是axios的新手,我试图将我的弹性搜索云与axios连接起来,我得到了:错误401未经授权。

这是我在vue.js中的代码:

 axios.get('https://username:password@url:9243/elastictest/apps/_search?pretty',{
        params:{
             source: JSON.stringify(query),
            source_content_type: 'application/json' ,

        },

       }).then(response =>this.skills =response.data.hits.hits);

我不确定我的用户名和密码在哪里?

如果您有任何想法或解决方案?

感谢您的帮助!

1 个答案:

答案 0 :(得分:0)

我认为,您的浏览器并不尊重通过网址传递的凭据。您可以通过设置the axios docs中列出的auth属性,直接在配置对象(您还可以定义参数)中传递身份验证信息。

auth: {
  username: 'username',
  password: 'password'
}

请注意,您可能需要将withCredentials参数设置为true,具体取决于您定位的后端配置。

由于此代码看起来就像是直接从浏览器访问elasticsearch实例,因此您应该知道您的数据库随后会暴露给所有客户端,并且还可以从客户端javascript中读取身份验证信息。这可能不是你想要的。