HTTP隧道 (专业版)
NodeJS 接入指南

隧道验证方式

地址:http-pro.abuyun.com,端口:9010

隧道验证方式

HTTP隧道拥有两种授权模式:

  • 请求头(默认)

通过用户名/密码的形式进行身份认证,该认证信息最终会转换为『Proxy-Authorization』协议头跟随请求一起发出。

为便于部分语言进行接入,平台亦支持通过『Authorization』协议头进行隧道身份验证。

  • 绑定IP(暂未启用)

只须绑定用户发起请求的服务器IP即可。

一条代理隧道只能绑定一个IP,同一IP可以分别绑定到专业版、动态版、经典版代理隧道各一条。

              
    const http = require("http");
    const url  = require("url");

    // 要访问的目标页面
    const targetUrl = "http://test.abuyun.com";
    //const targetUrl = "http://proxy.abuyun.com/switch-ip";
    //const targetUrl = "http://proxy.abuyun.com/current-ip";

    const urlParsed   = url.parse(targetUrl);

    // 代理服务器
    const proxyHost = "http-pro.abuyun.com";
    const proxyPort = "9010";

    // 代理隧道验证信息
    const proxyUser = "H01234567890123P";
    const proxyPass = "0123456789012345";

    const base64    = new Buffer(proxyUser + ":" + proxyPass).toString("base64");

    const options = {
        host    : proxyHost,
        port    : proxyPort,
        path    : targetUrl,
        method  : "GET",
        headers : {
            "Host"                : urlParsed.hostname,
            "Proxy-Authorization" : "Basic " + base64
        }
    };

    http
        .request(options, function(res) {
            console.log("got response: " + res.statusCode);
        })
        .on("error", function(err) {
            console.log(err);
        })
        .end()
    ;              
            
              
    const request = require("request");

    // 要访问的目标页面
    const targetUrl = "http://test.abuyun.com";
    //const targetUrl = "http://proxy.abuyun.com/switch-ip";
    //const targetUrl = "http://proxy.abuyun.com/current-ip";

    // 代理服务器
    const proxyHost = "http-pro.abuyun.com";
    const proxyPort = 9010;

    // 代理隧道验证信息
    const proxyUser = "H01234567890123P";
    const proxyPass = "0123456789012345";

    const proxyUrl = "http://" + proxyUser + ":" + proxyPass + "@" + proxyHost + ":" + proxyPort;

    const proxiedRequest = request.defaults({'proxy': proxyUrl});

    const options = {
      url     : targetUrl,
      headers : {
        "Proxy-Switch-Ip" : "yes"
      }
    };

    proxiedRequest
        .get(options, function (err, res, body) {
            console.log("got response: " + res.statusCode);
        })
        .on("error", function (err) {
            console.log(err);
        })
    ;              
            
              
    const request = require("superagent");

    require("superagent-proxy")(request);

    // 要访问的目标页面
    const targetUrl = "http://test.abuyun.com";
    //const targetUrl = "http://proxy.abuyun.com/switch-ip";
    //const targetUrl = "http://proxy.abuyun.com/current-ip";

    // 代理服务器
    const proxyHost = "http-pro.abuyun.com";
    const proxyPort = 9010;

    // 代理隧道验证信息
    const proxyUser = "H01234567890123P";
    const proxyPass = "0123456789012345";

    const proxyUrl = "http://" + proxyUser + ":" + proxyPass + "@" + proxyHost + ":" + proxyPort;

    request
        .get(targetUrl)
        .proxy(proxyUrl)
        .end(function onResponse(err, res) {
            if (err) {
                return console.log(err);
            }

            console.log(res.status, res.headers);
            console.log(res.text);
        })
    ;              
            
体验服务
现在开始,体验阿布云大数据服务
计算、网络、大数据、人工智能,阿布云助您飞跃发展
  • · 功能和特性
  • · 价格和优惠
  • · 获取帮助