当前位置: 首页 > 知识库问答 >
问题:

如何阻止axios向外部API发送nuxt auth令牌?

谷永贞
2023-03-14

如何使用axios从auth中间件后面的页面向外部API发出请求?API不需要任何身份验证
每次发送包含身份验证令牌的请求时,都不会产生任何问题,但每次都将身份验证令牌发送到外部API时,我觉得不安全。到目前为止,我试过:

const config = {
            headers: { Authorization: '' }
        };
        let response = $axios.$get(`APIURL`,config)

然而,标题请求仍然包含授权令牌。

共有1个答案

洪雅健
2023-03-14

您确实不应该使用令牌头作为默认值。

您是否在单独的文件中使用axios实例,您可以在其中配置请求/响应配置?所以这样做。

仅为特定url设置默认身份验证标头,例如基本API urlhttp://api.localhost:3333只把代币寄到那里。

例子:

// Add a request interceptor

import axios from "axios";
axios.interceptors.request.use(config => {

const token = '';
   const apiUrl = https://api.xxdomain.com/;

   if (config.url.contains(apiUrl)) {
       config.headers['Authorization'] = 'Bearer ' + token;
   }else{
     config.headers['Content-Type'] = 'application/json';
   }

   return config;
},
error => {
   Promise.reject(error)
});

试着阅读这篇文章-

 类似资料:
  • 我有两个Rest终点。 -身份提供程序,在用户通过用户名/密码的身份验证后,发送JWT令牌作为响应。 -接受上述JWT令牌作为头,对其进行验证,如果令牌有效,则发送用户JSON作为响应。 我已经使用Angular2创建了我的UI null

  • 请不要将此标记为重复。我已经阅读了关于堆栈溢出的每一个相关答案,并且还没有找到这个问题的明确解决方案。 我现在正在使用带有axios的vue服务器来尝试从https://coinmarketcap.com.获取数据并显示它。问题是,我在chrome控制台上收到一条错误消息: 从https://api.coinmarketcap.com/v1/ticker到https://api.coinmarke

  • 问题内容: 我想使用post来更新数据库,并且不希望人们手动进行,也就是说,只能通过客户端中的AJAX来实现。在这种情况下是否有一些众所周知的加密技巧? 假设我正在发出GET请求,以将新用户插入数据库中。有人可以通过发出假请求来填充我的数据库。 问题答案: 在这种情况下,无法避免伪造的请求,因为客户端浏览器已经具有发出请求所需的一切;恶意用户只需进行一些调试即可弄清楚如何向您的后端发出任意请求,甚

  • 想改进这个问题吗?更新问题,使其仅通过编辑这篇文章来关注一个问题。 我是Spring框架Java新手,我需要一种从我的应用程序调用外部Rest Api的方法。是否有任何“最佳实践”超文本传输协议客户端,以便我可以根据需要使用? 提前感谢

  • 问题内容: 我想阻止从外部直接访问docker容器。我使用haproxy,并且只希望访问端口80、443。 我在iptables中添加了以下规则。但是我仍然可以通过不同的端口访问Docker容器。 这可能是由于DOCKER链 我需要创建什么规则来阻止直接访问? 问题答案: 您可以使用命令创建一个网络来连接应用程序和代理,而不必使用IP表来执行此操作。另外,请勿在任何端口上公开应用程序。您应该公开的

  • 我正在使用django后端和CRAO前端。我将jwt刷新令牌保存为http仅cookie: 然后,为了刷新访问令牌,我发送了一个axios请求: 但是,在这种情况下,最初保存的cookie不会由axios发送。然而,在删除httponly属性后,cookies确实会被发送,并且一切正常。