Առաջին URL-ը կարող է լինել HTTPS, իսկ վերահասցեավորված URL-ը՝ HTTP։ Ընտրեք գործակալը յուրաքանչյուր հարցման նպատակակետի համաձայն՝ փոխարենը մեկ գործակալ առաջին URL-ին կապելու։

ESM հավելվածում ներմուծված node-fetch փաթեթի համար տրամադրեք ֆունկցիա՝

import fetch from 'node-fetch';
import { HttpProxyAgent } from 'http-proxy-agent';
import { HttpsProxyAgent } from 'https-proxy-agent';

const proxyUrl = 'http://proxy.example:8080';
const httpAgent = new HttpProxyAgent(proxyUrl);
const httpsAgent = new HttpsProxyAgent(proxyUrl);

const response = await fetch('https://api.example/', {
  agent: url => url.protocol === 'http:' ? httpAgent : httpsAgent,
});

Փոխարինեք API-ի URL-ը և պրոքսիի վերջնակետը։ Հանրային միջնորդի միջոցով թույլատրված հանրային API-ի համար HTTP պրոքսիների ցանկը թեկնածուներ է տալիս proxyUrl-ի համար։ Երկու գործակալները կարող են օգտագործել նույն HTTP պրոքսի լսողը. նրանց անունները վերաբերում են նպատակակետին ուղղված հարցմանը։

Ընտրիչին փոխանցված URL-ըԸնտրված գործակալը
https://…httpsAgent
http://…httpAgent

Այսպիսով, ֆունկցիան դեռ ընտրում է համապատասխան գործակալը, եթե վերահասցեավորումը փոխում է նպատակակետի արձանագրությունը։ proxyUrl-ը շարունակում է նկարագրել միջնորդին՝ անկախ այդ որոշումից։

Ստեղծեք գործակալները մեկ անգամ աշխատանքային բեռի համար և կրկին օգտագործեք։ Մշակեք վերադարձված կարգավիճակը և պատասխանի մարմինը կարդացեք կանչող կոդում։ Այս գործակալի ինտերֆեյսը պատկանում է node-fetch-ին. Node-ի ներկառուցված fetch-ը օգտագործում է այլ տրանսպորտային ինտերֆեյս։

Առնչվող հոդվածներ