Javascript 如何从HTML页面调用node.js函数?

Javascript 如何从HTML页面调用node.js函数?,javascript,node.js,ecmascript-6,node-modules,azureservicebus,Javascript,Node.js,Ecmascript 6,Node Modules,Azureservicebus,下面是node.js和Azure服务总线教程。 我可以将以下作为节点应用程序运行,但是,我很难从HTML页面调用节点函数: 请注意,所有文件都正确加载了节点http服务器模块,但是,当我调用main函数时,出现以下错误: ReferenceError: ServiceBusClient is not defined Node.js函数: const { ServiceBusClient } = require("@azure/service-bus"); // Defin

下面是node.js和Azure服务总线教程。 我可以将以下作为节点应用程序运行,但是,我很难从HTML页面调用节点函数:

请注意,所有文件都正确加载了节点http服务器模块,但是,当我调用main函数时,出现以下错误:

ReferenceError: ServiceBusClient is not defined
Node.js函数:

const { ServiceBusClient } = require("@azure/service-bus");

// Define connection string and related Service Bus entity names here
const connectionString ="";
const queueName = "";

async function main() {
  const sbClient = ServiceBusClient.createFromConnectionString(
    connectionString
  );
  const queueClient = sbClient.createQueueClient(queueName);
  const sender = queueClient.createSender();

  try {
    for (let i = 0; i < 1; i++) {
      const message = {
        body: "{}",
        label: "Contact",

        userProperties: {
          myCustomPropertyName: "my custom property value",
        },
      };
      console.log(`Sending message: ${message.body}`);
      await sender.send(message);
    }

    await queueClient.close();
  } finally {
    await sbClient.close();
  }
}

main().catch((err) => {
  console.log("Error occurred: ", err);
});
const{ServiceBusClient}=require(@azure/servicebus”);
//在此处定义连接字符串和相关服务总线实体名称
const connectionString=“”;
const queueName=“”;
异步函数main(){
const sbClient=ServiceBusClient.createFromConnectionString(
连接字符串
);
const queueClient=sbClient.createQueueClient(queueName);
const sender=queueClient.createSender();
试一试{
for(设i=0;i<1;i++){
常量消息={
正文:“{}”,
标签:“联系人”,
用户属性:{
myCustomPropertyName:“我的自定义属性值”,
},
};
log(`Sending message:${message.body}`);
等待发送者。发送(消息);
}
等待queueClient.close();
}最后{
等待sbClient.close();
}
}
main().catch((错误)=>{
log(“发生错误:”,err);
});

非常感谢您的帮助。

总结Pogrindis的评论,供其他社区参考:


节点是后端业务逻辑,HTML是前端,因此与节点中的方法没有直接通信。我们可以实现一些Web服务器,比如
express
,以允许对节点服务器进行http调用,并从那里调用业务逻辑。对于服务总线的错误,我们需要实现接口。

要在网站上使用Azure SDK库,您需要将代码转换为在浏览器中工作。您可以使用捆绑程序(如汇总、网页包、包裹等)执行此操作。请参阅此项以在浏览器中使用
@azure/service bus

此外,示例中的代码看起来使用的是版本1

最近发布了7.0.0版。请参阅下面的链接


节点是后端业务逻辑,HTML是前端,因此与节点中的方法没有直接通信。。您可以实现一些Web服务器,如
express
,以允许对节点服务器进行http调用,并从那里调用您的业务逻辑..注意:我不确定ServiceBus的100%,但似乎有一个websocket接口,您可以查看:谢谢-这就是答案。