SignalR 在浏览器中工作,而不是在应用程序中工作

SignalR working in browser not in app

我有一个使用 signalR 的应用程序,当我在浏览器中尝试它时它工作正常。 当然,连接是绝对的 URLץ

当我将应用程序部署到 android 设备时,它不起作用。 我连接 Chrome 以对应用程序的 webview 进行远程调试,我可以看到网络选项卡。

谈判正在进行,我可以看到结果,但除此之外什么都没有。

我认为这可能是一个 permission\configuration 问题,因为它适用于浏览器。

我应该采取哪些步骤来完成这项工作?

可能的答案:

首先,我假设在浏览器中意味着您将客户端 html 文件放在 Web 服务器中。例如www.example.com/index.html

那么signalr服务器中心也在www.example.com

你部署后,cordova把index.html放在Androidphone或iPhone里面,就变成了跨域调用,所以需要开启cors让它发挥作用!

所以我设法让它发挥作用。 由于我正在使用 JSONP 进行跨域通信,因此我想对 signalR 进行同样的操作。

在我的浏览器中它工作正常,但当编译为 APK 和 运行 在设备上时它不工作。

将 signalR 更改为使用 CORS 而不是 jsnop 解决了问题。