遵循本教程:
http://www.asp.net/signalr/overview/getting-started/tutorial-getting-started-with-signalr
我设法实现了一个非常非常简单的Signalr聊天客户端。即,一个广播从javascript发送给它的消息的集线器。
很好,行得通。
但是现在我试图用相同的index.html文件和js(即发送消息的代码)创建第二个项目,但遇到了未定义的错误。正如本教程指定的和我完成的一样(在“远程”项目中),文件之间的唯一区别是我已明确指定了connection.hub.url
,正如我从各种帖子中所建议的那样。
我到底在想什么?仅仅将URL设置到托管信号中心的另一个站点显然是不够的,我是否需要添加某种代理?在这一点上完全困惑。
我的JavaScript文件(不带中心的网站上的javascript):
$(function () {
var chat = $.connection.chatHub;
$.connection.hub.url = "http://localhost:14113/signalr";
chat.client.broadcastMessage = function (name, message) {
// Do something
};
$.connection.hub.start().done(function () {
$('#sendmessage').click(function () {
chat.server.send($('#displayname').val(), $('#message').val());
});
});
});
它是对chat
变量的第一次引用,我有未定义的错误。
注意:我可以确认两个站点都在运行,可以使用集线器,因为我可以导航到另一个选项卡(原始解决方案中的相同index.html文件),并且它可以正常运行。
我还可以确认是否存在我的jQuery库(正确引用)和jQuery signalR脚本(同样,没有404,都正确引用了)。
参考方案
您正在尝试访问在主机应用程序中生成的chatHub
。看来您的代码无法获取该chatHub
。您需要确保在客户端应用程序中包括集线器,如下所示:
<script src="localhost:14113/signalr/hubs"></script>
ddl在服务器中未更新-asp.net - javascript我在ASP.NET c#上工作。我有一个DropDownList。 (runat =“ server”)在$ {document).ready上,我更新了它的值:$(document).ready(function () { document.getElementById("ddl").value = "abc"; ……
ASP.NET-如何更改JSON序列化的方式? - javascript我正在使用ASP.NET通过以下查询返回Json文件:public ActionResult getTransactionTotals(int itemID) { DBEntities db = new DBEntities(); var query = from trans in db.Transactions // Linq query removed …
javascript popupwindow之后的行如何工作? - javascript好的,我有一个来自后面代码的方法,可以创建一个popupwindow。然后有一行代码要在那之后执行,我想知道那行代码何时执行,是在使用popupwindow之后执行还是在创建popupwindow之后执行?例如:void exPopupWindowMethod() { string scr = "window.open('exampleP…
ASP.NET MVC中应为DataTable返回哪种数据? - javascript我想为DataTable中的每个页面创建动态加载信息。我正在尝试遵循以下示例:https://www.datatables.net/manual/server-sidehttps://www.datatables.net/manual/data来自示例的代码:$('#example').DataTable( { serverSide: t…
从javascript访问模型属性 - javascript我有一个ASP.NET MVC项目,并且试图从视图(.cshtml)和javascript函数中访问模型属性(isNew),所以我在下面执行但没有成功:@model My.Common.DTOs.MyDTO function Initizalize() { if ([email protected]) { DoSomeStuff(); // call another…