Jef*_*eff 3 servicestack signalr
我有一个servicestack服务器应用程序,只处理api调用(休息).我正在尝试实现我在这篇Strathweb.com文章中找到的功能.
要调用我的api,我使用url .../api/getthis,它运行良好.
我添加了IncomingHubAttribute和OutgoingHubAtttributes并用它们装饰我的方法,并调用方法,一切都很好.
我可以浏览localhost:1234/signalr/hubs
并看到生成的js 但是当我localhost:1234/log.html
按照文章中的描述浏览时,我得到*hub.client没有定义.*
我的apphost文件中有以下内容...
//Switch ServiceStack’s mode of operation to buffered,
PreRequestFilters.Add((req, res) => req.UseBufferedStream = true);
...
public override void Configure(Funq.Container container)
{ ...
RouteTable.Routes.MapHubs();
Run Code Online (Sandbox Code Playgroud)
我读过有关必须添加的内容
SetConfig(new EndpointHostConfig {RawHttpHandlers ...
但是不能完全理解什么会被路由到哪里.我觉得我很亲密.
这是我的log.html文件
<html>
<head>
</head>
<body>
<ul id="messages"></ul>
</body>
<script type="text/javascript" src="Scripts\jquery-1.6.4.js"></script>
<script type="text/javascript" src="Scripts\jquery.signalR.core.js"></script>
<script type="text/javascript" src="/signalr/hubs"></script>
<script type="text/javascript">
$(function () {
var hub = $.connection.servicelog;//<---- **this does not seem to get resolved**
hub.client.log = function (data) {
$('#messages').prepend('<li>' + data.Time + " - " + data.Data + '</li>');
};
hub.client.logMessage = function (data) {
$('#messages').prepend('<li>' + data.Time + " - " + data.Data.Id + " " + data.Data.Name + '</li>');
};
hub.client.logArray = function (data) {
$('#messages').prepend('<li>' + data.Time + " - " + data.Data + '</li>');
};
$.connection.hub.start();
});
</script>
</html>
Run Code Online (Sandbox Code Playgroud)
您正在加载不正确的信号器脚本"Scripts\jquery.signalR.core.js".它应该是"Scripts\jquery.signalR-(version).js"