无法从javascript客户端连接信号器集线器
我正在尝试从javascript客户端连接到另一个域中的信号器集线器 我在页面中的参考资料无法从javascript客户端连接信号器集线器,javascript,jquery-mobile,signalr,Javascript,Jquery Mobile,Signalr,我正在尝试从javascript客户端连接到另一个域中的信号器集线器 我在页面中的参考资料 `<script src="script/jquery-1.10.2.min.js"></script> <script src="script/jquery.mobile-1.4.3.min.js"></script> <script src="Scripts/jquery.signalR-2.1.2.min.js"></script
`<script src="script/jquery-1.10.2.min.js"></script>
<script src="script/jquery.mobile-1.4.3.min.js"></script>
<script src="Scripts/jquery.signalR-2.1.2.min.js"></script>
<script src="http://domain/SignalR/Hubs"></script>
<script type="text/javascript">
$(function () {
var myHub = $.connection.newHub;
// Start the connection
$.connection.hub.start();
// Declare a function on the blog hub so the server can invoke it
myHub.client.BroadcastMessage= function ( message) {
alert(message);
};
myHub.server.SentInfo(" message");
}
如果我尝试调用myHub.server.SentInfo(“消息”),则在控制台中失败代码>
它给出了如下错误:
Error: SignalR: Connection must be started before data can be sent. Call .start() before .send()
我错过了什么
提前感谢在JavaScript中,您需要有$.connection.hub.url='yourURL'在命名中心变量之前(var myHub=$.connection.newHub;
)。根据Startup.cs文件和CORS的配置方式,您可能需要稍微调整一下URL。信号器连接不会立即打开。您需要等待开放连接承诺兑现。请尝试以下代码
$.connection.hub.start().done(function () {
// Declare a function on the blog hub so the server can invoke it
myHub.client.BroadcastMessage= function ( message) {
alert(message);
};
myHub.server.SentInfo(" message");
});
我在调用$.connection.hub.start().done(){}时添加了url$.connection.hub.url,在控制台中$.connection.hub.state始终为0。如何配置Owin启动文件?无法访问服务器代码。jst需要照顾客户端。这对客户端是否合适?如果$.connection.hub.url=”http://domain/SignalR/Hubs";
或$.connection.hub.url=”http://domain/SignalR";代码>不起作用,那么我不太确定。希望其他人能参与进来,进一步提供帮助。
$.connection.hub.start().done(function () {
// Declare a function on the blog hub so the server can invoke it
myHub.client.BroadcastMessage= function ( message) {
alert(message);
};
myHub.server.SentInfo(" message");
});