.net - 使用 azure 服务总线调试 Visual Studio .net 应用程序的替代方法
问题描述
过去,当我开发实现远程事件接收器的 SharePoint Provider-Hosted 应用程序时,我使用 Azure 服务总线来调试代码,如https://blogs.msdn.microsoft.com/kaevans/2014/02/中所述26/attaching-remote-event-receivers-to-lists-in-the-host-web/,在 Azure 中我创建了一个新的服务总线 >> 我复制了主连接字符串,如下所示:-
然后在 Visual Studio 项目 >> 属性 >> SharePoint >> 我添加上述服务总线的主连接字符串,如下所示:-
这允许我调试我的代码。但是上周当我尝试这样做时,在运行项目后,我在 Visual Studio 中遇到了这些错误:-
一项或多项服务未从 Microsoft Azure 服务总线中注册。无法在 Microsoft Azure 服务总线上注册 Services/AppEventReceiver.svc:无法连接到远程服务器
所以我读到微软从 2018 年 9 月开始停止使用 azure 服务总线。但与此同时,我没有找到任何替代方法来使用 Azure 服务总线来调试共享点提供商托管的应用程序。那么有人可以就此提出建议吗?
解决方案
您可以使用ngrok 作为代理在本地调试您的应用程序,而无需使用服务总线。
将 localhost 传递给 Sharepoint 的问题是 Sharepoint 无法与它交谈,正如您所指出的那样。ngrok 为您提供 Sharepoint 可以访问的公共 URL,然后通过 ngrok 服务将其路由到您的本地计算机。这与服务总线所做的相同 - 提供路由到您本地的公共 URL。
您可以注册 {id}.ngrok.io/Services/AppEventReceiver 而不是注册 localhost:44332/Services/AppEventReceiver.svc,其中 id 是您启动本地 ngrok 服务时生成的 id。
推荐阅读
- python - 下载 MacOS 应用程序的安全问题 - “系统策略不允许加载库”
- javascript - 在 React App 中捕获错误 - 如何在一个侦听器中捕获所有错误,本地或第 3 方
- amazon-web-services - 为什么 Lambda 需要权限才能完成生命周期挂钩?
- sql - PostgreSQL 的子查询在选择附近返回语法错误
- javascript - JavaScript 数据表不返回数据
- python-3.x - 如何根据内部状态在两组属性值之间切换?
- c# - 如何检索电子邮件附件的内容,就像我 .ToString() 时显示的那样?
- apache-kafka - kafka fetchRecords 它可能会在某些极少数情况下发生(例如分区领导者更改)
- sql - 如何在sql中使用2列排序
- python - python - 从列表中随机选择