我有以下服务器代码:
var server = new Server("http://localhost:13170/");
server.MapConnection<EchoConnection>("echo");
server.Start();
但是当我从客户端代码连接到它时:
var connection = new Connection("http://localhost:13170/echo");
connection
.Start()
.ContinueWith(t =>
{
if (!t.IsFaulted)
connection.Send("Hello");
else
Console.WriteLine(t.Exception);
});
...报道:
System.Net.WebException: The remote server returned an error: (404) Not Found.
我做错了什么?
答案 0 :(得分:2)
原来,MapConnection
的参数必须以斜杠开头:
server.MapConnection<EchoConnection>("/echo");
这是因为Server.ResolvePath
在查找映射中的URL之前会预先设置斜杠。