我正在寻求在 Azure PubSub 中使用组,但似乎我的发布者和订阅者没有以某种方式加入同一个组,或者我的无服务器函数在消息发布后没有处理广播。如果我在未实施组的情况下发布该服务,但一旦我尝试添加组,我可以看到消息在 azure 上命中实时跟踪工具,但之后没有消息发送,所以我怀疑我的 azure 函数中可能遗漏了一些东西,但我不确定那会是什么。
发布者代码:
const hub = "simplechat";
let service = new WebPubSubServiceClient("Endpoint=endpointURL", hub);
// by default it uses `application/json`, specify contentType as `text/plain` if you want plain-text
const group = service.group("myGroup");
group.sendToAll('Hello World', { contentType: "text/plain" });
订阅者代码:
const WebSocket = require('ws');
const { WebPubSubServiceClient } = require('@azure/web-pubsub');
var printer = require("printer/lib");
var util = require('util');
async function main() {
const hub = "simplechat";
let service = new WebPubSubServiceClient("EndpointEndpointURL", hub);
const group = service.group("myGroup");
let token = await service.getClientAccessToken();
let ws = new WebSocket(token.url, 'json.webpubsub.azure.v1');
ws.on('open', () => console.log('connected'));
ws.on('message', data => {
console.log('Message received: %s', data);
});
}
main();