چطور از ساکس پروکسی برای ارسال درخواست های Axios استفاده کنیم؟

mohsen9 ماه قبل
ارسال شده در
javascript

کتابخانه Axios یکی از محبوب ترین کتابخانه های جاوااسکریپت برای ارسال درخواست های HTTP است. یکی از بهترین قابلیت های این کتابخانه امکان استفاده از پروکسی برای ارسال درخواست ها است. اما به صورت پیش فرض اکسیوس از Socks پستیبانی نمی کند برای همین باید از کتابخانه socks-proxy-agent برای ارسال درخواست ها از طریق این پروتکل استفاده کنیم.

برای این کار ابتدا باید آن را نصب کنیم:

      npm i socks-proxy-agent

    

بعد از نصب باید بوسیله کلاس SocksProxyAgent تنظیمات پروکسی را مشخص کرده و ایجینت ایجاد شده را از طریق ویژگی های httpsAgent و httpAgent به Axios ارسال کنیم.

      import axios from "axios"
import { SocksProxyAgent } from "socks-proxy-agent"

const proxyAgent = new SocksProxyAgent("socks://127.0.0.1:9050");

// ارسال فقط برای یک درخواست
const response = await axios.request({
    url: "https://example.com/",
    method: "GET",
    httpsAgent: proxyAgent,
    httpAgent: proxyAgent
})

// ارسال با متد مشخص
const response = await axios.get("https://your-target-domain.com/", {
  httpsAgent: agent,
  httpAgent: agent,
})

// یا برای تعریف کلی
const axiosInstance = axios.create({
  httpsAgent: torProxyAgent,
  httpAgent: torProxyAgent
})
    

اگر نیاز به احراز هویت برای استفاده از پروکسی باشد، باید نام کاربری و کلمه عبور را به صورت زیر در آدرس مشخص کنیم:

      "socks://<USERNAME>:<PASSWORD>@<PROXY_HOST>:<PROXY_PORT>"

    
رای
0
ارسال نظر
مرتب سازی:
اولین نفری باشید که نظر می دهید!