import { createClient } from 'contentful';
import { HttpsProxyAgent } from 'https-proxy-agent';

const agent = new HttpsProxyAgent('http://proxy.example:8080');
const client = createClient({
  space: spaceId,
  accessToken,
  adapter: 'http',
  httpsAgent: agent,
  proxy: false,
});

ใช้ spaceId/accessToken ที่มีอยู่กับไคลเอนต์นี้สำหรับงาน Delivery API โดยถือว่าไลบรารีที่ต้องพึ่งพามีอยู่แล้ว สำหรับคำขอ Delivery API สาธารณะที่ได้รับอนุญาตผ่านตัวกลางสาธารณะ รายการพร็อกซี HTTP มีผู้สมัครสำหรับ URL พร็อกซี HTTP ของเอเจนต์

API ค่าเริ่มต้นใช้ HTTPS จึงเลือก httpsAgent เอเจนต์นั้นเชื่อมต่อไปยังตัวรับฟังพร็อกซี HTTP และสร้าง CONNECT ได้ proxy:false กันไม่ให้ Axios เพิ่มการเลือกพร็อกซีอีกชั้น

อะแดปเตอร์ Node http ที่ระบุชัดเจนสำคัญ เพราะเครือข่ายของเบราว์เซอร์และอะแดปเตอร์อื่นไม่ได้เส้นทางซ็อกเก็ต Node จากฟิลด์เหล่านี้ เก็บเอเจนต์ไว้ตลอดงานของไคลเอนต์แล้วปล่อยเมื่อคำขอเสร็จตอนปิดระบบ

บทความที่เกี่ยวข้อง