Azure Service Bus fyrir Node.js: HTTP milliþjónn gegnum AMQP yfir WebSockets
Stilltu @azure/service-bus með ws og HttpsProxyAgent þegar AMQP-tengingin verður að fara gegnum HTTP-milliþjón.
Fyrir Service Bus v7 skilaboðaþjóninn í Node bak við HTTP-milliþjón skaltu nota AMQP-yfir-WebSockets uppsetningu SDK-sýnisins:
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 },
},
});
Gefðu upp slóð milliþjónsins og Service Bus tengistrenginn. Fyrir leyfða prófun á opinberu Service Bus nafnrými án auðkenningar milliþjóns getur HTTP-færsla úr HTTP-milliþjónalistanum veitt proxyUrl. Pakkarnir ws og https-proxy-agent verða þegar að vera forritsháðir. Undirliggjandi ws milliþjónaumboðssniðmát heldur WebSocket-þjónustunni og slóðum milliþjónsins aðskildum.
Þetta byggir þjóninn; tenging verður þegar sendandi eða móttakandi framkvæmir aðgerð. Geymdu hann fyrir þá vinnu og bíddu eftir client.close() við slokknun.
Finndu bilun í uppsetningu milliþjónagangs, WebSocket-samningum og Service Bus-aðgerð. Milliþjónninn verður að leyfa þá áfangastaði og setu. Stuttur HTTPS-aðgangur sannar ekki stuðning við uppfærslu né ásættanlegt hámark langvarandi tenginga.
Þetta er ofhleðslan með tengistreng. Auðkennisgögn geta bætt við sérstilltri slóð til að fá tákn. Gömlu azure-sb REST-brotin nota aðra kynslóð; auðkenndu pakkann áður en þú velur flutningsvalkosti hans.