Node.js uchun Azure Service Bus: WebSockets ustida AMQP orqali HTTP proksi
AMQP ulanishi HTTP proksidan o'tishi kerak bo'lsa, @azure/service-bus ni ws va HttpsProxyAgent bilan sozlang.
HTTP proksi orqasidagi Node Service Bus v7 xabar mijozi uchun SDK namunasidagi AMQP-over-WebSockets tartibidan foydalaning:
const { ServiceBusClient } = require("@azure/service-bus");
const WebSocket = require("ws");
const { HttpsProxyAgent } = require("https-proxy-agent");
const proxyAgent = new HttpsProxyAgent(proxyUrl);
const client = new ServiceBusClient(connectionString, {
webSocketOptions: {
webSocket: WebSocket,
webSocketConstructorOptions: { agent: proxyAgent },
},
});
Proksi URL manzili va Service Bus ulanish satrini taqdim eting. Proksi autentifikatsiyasisiz ruxsat etilgan ommaviy Service Bus namespace sinovi uchun HTTP proksilar ro'yxatidan HTTP yozuvi proxyUrl bera oladi. ws va https-proxy-agent paketlari allaqachon ilova bog'liqliklari bo'lishi kerak. Asosiy ws proksi-agent interfeysi WebSocket xizmati va proksi manzillarini alohida saqlaydi.
Bu mijozi quradi; ulanish jo'natuvchi yoki qabul qiluvchi amal bajarganda yuzaga keladi. Uni o'sha ish yuki uchun saqlang va o'chirishda client.close() ni kuting.
Xatoni proksi tunneli sozlash, WebSocket muzokaralari va Service Bus amali orasidan toping. Proksi o'sha manzil va sessiyaga ruxsat berishi kerak. Qisqa HTTPS kirish yangilanishni qo'llab-quvvatlashni yoki maqbul uzoq muddatli ulanish chegarasini isbotlamaydi.
Bu ulanish satri bilan ortiqcha yuklanishdir. Identifikatsiya ma'lumoti alohida sozlangan token olish yo'lini qo'shishi mumkin. Eski azure-sb REST parchalari boshqa avloddan foydalanadi; transport parametrlarini tanlashdan oldin paketni aniqlang.