Azure Service Bus ສຳລັບ Node.js: HTTP proxy ຜ່ານ AMQP ເທິງ WebSockets
ຕັ້ງຄ່າ @azure/service-bus ກັບ ws ແລະ HttpsProxyAgent ເມື່ອການເຊື່ອມຕໍ່ AMQP ຕ້ອງຜ່ານ HTTP proxy.
ສຳລັບລູກຄ້າສົ່ງຂໍ້ຄວາມ Service Bus v7 ຂອງ Node ທີ່ຢູ່ຫຼັງ HTTP proxy ໃຫ້ໃຊ້ການຈັດວາງ AMQP-over-WebSockets ຂອງຕົວຢ່າງ SDK:
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 ຂອງ proxy ແລະ ສະຕຣິງເຊື່ອມຕໍ່ Service Bus. ສຳລັບການທົດສອບ namespace Service Bus ສາທາລະນະທີ່ອະນຸຍາດໂດຍບໍ່ມີການພິສູດຕົວຕົນ proxy ລາຍການ HTTP ຈາກລາຍຊື່ proxy HTTP ສາມາດໃຫ້ proxyUrl. ແພັກເກັດ ws ແລະ https-proxy-agent ຕ້ອງເປັນການຂຶ້ນກັບຂອງແອັບພລິເຄຊັນແລ້ວ. ອິນເຕີເຟສຕົວແທນ proxy ws ພື້ນຖານ ຮັກສາບໍລິການ WebSocket ແລະ ທີ່ຢູ່ proxy ແຍກກັນ.
ສິ່ງນີ້ສ້າງລູກຄ້າ; ການເຊື່ອມຕໍ່ເກີດຂຶ້ນເມື່ອຜູ້ສົ່ງ ຫຼື ຜູ້ຮັບເຮັດການດຳເນີນການ. ເກັບມັນໄວ້ສຳລັບພາລະວຽກນັ້ນ ແລະ ລໍຖ້າ client.close() ເມື່ອປິດ.
ຊອກຫາຄວາມລົ້ມເຫຼວໃນການຕັ້ງອຸໂມງ proxy ການເຈລະຈາ WebSocket ແລະ ການດຳເນີນການ Service Bus. proxy ຕ້ອງອະນຸຍາດປາຍທາງ ແລະ ເຊສຊັນນັ້ນ. ການເຂົ້າເຖິງ HTTPS ໄລຍະສັ້ນບໍ່ໄດ້ພິສູດການສະໜັບສະໜູນການອັບເກຣດ ຫຼື ຂີດຈຳກັດການເຊື່ອມຕໍ່ຍາວນານທີ່ຍອມຮັບໄດ້.
ນີ້ແມ່ນການໂຫຼດເກີນຂອງສະຕຣິງເຊື່ອມຕໍ່. ຂໍ້ມູນຢືນຢັນຕົວຕົນສາມາດເພີ່ມເສັ້ນທາງການໄດ້ຮັບໂທເຄັນທີ່ຕັ້ງຄ່າແຍກ. ສະນິບເປັດ REST azure-sb ເກົ່າໃຊ້ລຸ້ນອື່ນ; ກຳນົດແພັກເກັດກ່ອນເລືອກຕົວເລືອກການຂົນສົ່ງ.