ตรวจสอบการ import ของ Authlib ก่อนเลือกอาร์กิวเมนต์ proxy การผสานรวม Requests และ HTTPX ของมันให้การกำหนดค่าการรับส่งที่ต่างกัน

OAuth2Session ของ Requests สืบทอดพฤติกรรม Session ของ Requests:

from authlib.integrations.requests_client import OAuth2Session

client = OAuth2Session(client_id=client_id)
client.proxies.update({
    "http": "http://proxy.example.net:8080",
    "https": "http://proxy.example.net:8080",
})

การผสานรวม HTTPX แบบอะซิงโครนัสที่เกี่ยวข้องรับอาร์กิวเมนต์ proxy ระดับไคลเอนต์ขณะสร้าง:

from authlib.integrations.httpx_client import AsyncOAuth2Client

client = AsyncOAuth2Client(
    client_id=client_id,
    proxy="http://proxy.example.net:8080",
)

ตัวอย่าง HTTPX ใช้ตัวเลือก proxy รูปเอกพจน์ที่ Authlib 1.9.1 รองรับ การผสานรวมนั้นส่งตัวเลือกการรับส่งที่รู้จักไปยังไคลเอนต์ HTTP ภายใต้ของมัน พจนานุกรม proxies สไตล์ Requests ไม่ใช่อาร์กิวเมนต์คอนสตรักเตอร์ที่แลกเปลี่ยนกันได้ สำหรับปลายทาง token และ API สาธารณะบนเส้นทางพร็อกซีสาธารณะที่ได้รับอนุญาต รายการพร็อกซี HTTP ให้ผู้สมัครสำหรับ URL พร็อกซี HTTP ของทั้งสองตัวอย่าง

รักษาการลงทะเบียน OAuth ที่มีอยู่ของแอปพลิเคชัน redirect URI, scopes และการจัดการ token เมื่อใช้การกำหนดค่าใด ๆ ใช้ไคลเอนต์ที่กำหนดค่าไว้สำหรับการดำเนินการ token และทรัพยากรที่ได้รับการป้องกัน และปิดผ่านวงจรชีวิตแบบซิงโครนัสหรืออะซิงโครนัสตามปกติ

ตัวช่วยของเฟรมเวิร์กอาจสร้างไคลเอนต์เหล่านี้ในนามของแอปพลิเคชัน ตรวจสอบการผสานรวมของตัวช่วยและตัวเลือกการสร้างไคลเอนต์ก่อนส่งอาร์กิวเมนต์ขณะร้องขอ คำสำคัญ proxies ที่คำขอ token ของ Requests ยอมรับไม่ได้พิสูจน์ว่าคำขอ HTTPX แบบอะซิงโครนัสก็ยอมรับเช่นกัน

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