Welcome toVigges Developer Community-Open, Learning,Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
181 views
in Technique[技术] by (71.8m points)

Axios使用代理IP请求

问题描述

使用vue想要实现爬虫,需要通过代理ip来访问到目标网站,根据文档使用了axios的proxy配置却无效果。

问题出现的环境背景及自己尝试过哪些方法

网上搜索全部是关于proxyTable解决跨域的,没有有用信息。
直接使用proxy和引入tunnel都不行,分别使用http和https也都不行。结果就是访问后目标服务端获取到的ip仍然是本机原ip,非代理ip,将代理地址随便改错,也不会有任何报错。说明代理没有生效。

相关代码

代码如下:(目标网址隐藏了,百度的有跨域访问不了,只是占位)

// 方法1
axios({
    url: 'http://www.baidu.com',
    method: 'get',
    proxy: {
      host: '183.167.217.152',
      port: 63000
    }
  }).then(res => {
    console.log(res)
  })

// 方法2

axios({
    url: 'https://www.baidu.com/',
    method: 'get',
    proxy: false,
    httpAgent: tunnel.httpOverHttp({proxy: {host: '183.167.217.152', port: '630001'}}),
    httpsAgent: tunnel.httpsOverHttp({proxy: {host: '183.167.217.152', port: '630001'}})
  }).then(res => {
    console.log(res)
  })

你期待的结果是什么?实际看到的错误信息又是什么?


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Answer

0 votes
by (71.8m points)

我第一次见这种写法,vue有关于proxy的配置文件啊,为什么要在axios里面配置?


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome to Vigges Developer Community for programmer and developer-Open, Learning and Share
...