我正在尝试设置一个负载测试,该负载测试将尽可能多地使用代码库。我在同一过程中运行服务器和客户端:
class Program
{
class Startup
{
public void Configuration(IAppBuilder app)
{
app.MapSignalR(new HubConfiguration
{
EnableDetailedErrors = true
});
}
}
public static void Main(string[] args)
{
var signalr = "http://localhost:21337/";
using (WebApp.Start<Startup>(signalr))
{
var connection = new HubConnection(signalr) {Credentials = CredentialCache.DefaultNetworkCredentials};
var catalog = connection.CreateHubProxy("CatalogHub");
connection.Start().Wait();
catalog.Invoke("SendChat", String.Empty, String.Empty, String.Empty);
Console.ReadLine();
}
}
}
但是,connection.Start.Wait()
我收到401未经授权的错误。我不知道为什么,因为IIS在管道中无处可寻。
PEBKAC。原来集线器已经[Authorize]
设置好了,但是我正在使用匿名身份验证。确保Ntlm身份验证解决了该问题。
public class Startup
{
public void Configuration(IAppBuilder app)
{
var listener = (HttpListener)app.Properties[typeof(HttpListener).FullName];
listener.AuthenticationSchemes = AuthenticationSchemes.Ntlm;
app.MapSignalR(new HubConfiguration
{
EnableDetailedErrors = true,
EnableJSONP = true
});
}
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句