Node.js-க்கான Azure Service Bus: WebSockets மீது AMQP வழியாக HTTP ப்ராக்ஸி
AMQP இணைப்பு HTTP ப்ராக்ஸி வழியாகச் செல்ல வேண்டியிருக்கும்போது @azure/service-bus-ஐ ws மற்றும் HttpsProxyAgent உடன் கட்டமைக்கவும்.
HTTP ப்ராக்ஸிக்குப் பின்னால் உள்ள Node-இன் Service Bus v7 செய்தி கிளையண்டிற்கு SDK மாதிரியின் AMQP-over-WebSockets ஏற்பாட்டைப் பயன்படுத்தவும்:
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 },
},
});
ப்ராக்ஸி URL மற்றும் Service Bus இணைப்பு சரத்தை வழங்கவும். ப்ராக்ஸி அங்கீகாரம் இல்லாமல் அனுமதிக்கப்பட்ட பொது Service Bus namespace சோதனைக்கு HTTP ப்ராக்ஸி பட்டியல்களில் இருந்து ஒரு HTTP உள்ளீடு proxyUrl வழங்கலாம். ws மற்றும் https-proxy-agent தொகுப்புகள் ஏற்கனவே பயன்பாட்டு சார்புகளாக இருக்க வேண்டும். அடிப்படை ws ப்ராக்ஸி-ஏஜென்ட் இடைமுகம் WebSocket சேவையையும் ப்ராக்ஸி முகவரிகளையும் தனித்தனியாக வைத்திருக்கும்.
இது கிளையண்டை உருவாக்குகிறது; அனுப்புநர் அல்லது பெறுநர் ஒரு செயல்பாட்டைச் செய்யும்போது இணைப்பு ஏற்படுகிறது. அந்தப் பணிச்சுமைக்காக அதை வைத்திருந்து, மூடும்போது client.close()-ஐக் காத்திருக்கவும்.
ப்ராக்ஸி சுரங்கப் பாதை அமைப்பு, WebSocket பேச்சுவார்த்தை மற்றும் Service Bus செயல்பாட்டுக்கு இடையே தோல்வியைக் கண்டறியவும். ப்ராக்ஸி அந்த இலக்கையும் அமர்வையும் அனுமதிக்க வேண்டும். குறுகிய HTTPS அணுகல் மேம்படுத்தல் ஆதரவையோ ஏற்கத்தக்க நீண்டகால இணைப்பு வரம்பையோ நிரூபிக்காது.
இது இணைப்பு-சரம் ஓவர்லோட். ஒரு அடையாளச் சான்று தனித்தனியாக கட்டமைக்கப்பட்ட டோக்கன்-பெறும் பாதையைச் சேர்க்கலாம். பழைய azure-sb REST துணுக்குகள் மற்றொரு தலைமுறையைப் பயன்படுத்துகின்றன; அதன் போக்குவரத்து விருப்பங்களைத் தேர்ந்தெடுப்பதற்கு முன் தொகுப்பை அடையாளம் காணவும்.