Skip to content
davidfowl edited this page May 12, 2012 · 31 revisions

Frequently Asked Questions

Why doesn't SignalR work in browser X?

SignalR requires a JSON parser and ability to send xhr requests (for long polling). If your browser has none, you'll need to include json2.js in your application (SignalR will throw an error telling your you need it as well). You can get it on NuGet.

Why does signalr/hubs return 404?

If you're writing an MVC application, make sure that you are using Url.Content for your script references:

<script type="text/javascript" src="@Url.Content("~/signalr/hubs")"></script>
If you're writing a regular ASP.NET application use `ResolveClientUrl` for your script references:
<script type="text/javascript" src='<%= ResolveClientUrl("~/signalr/hubs") %>'></script>

If the above still doesn't work, make sure you have RAMMFAR set in your web.config:

<configuration>
   <system.webServer>
        <modules runAllManagedModulesForAllRequests="true">
        </modules>
    </system.webServer>
</configuration>

Why do I get an exception saying "Unknown Transport" on the server side?

Make sure you're using the latest version of the signalr client (js or .net client).

Why do I see the error "Connection must be started before data can be sent. Call .start() before .send()"?

There can be a couple of reasons for this. The first thing to recognize is that connection.start() is async. To do work after connection.start() (or $.connection.hub.start() if using hubs), specify a callback or use the jQuery deferred object returned to do work directly after start.

See https://github.com/SignalR/SignalR/wiki/SignalR-JS-Client for more details.

If this isn't the problem, there was probably an error during negotiation. To get more information about the exception, view the raw response in your browser tools or fiddler.

Why does SignalR stop accepting connections after ~10 or so?

If you are doing development with full IIS on Windows 7, there's a built in limitation of 10 concurrent connections. You need to use IIS Express or Windows Server.

Why don't I see disconnect notifications?

If you're running the built in visual studio development server, disconnect will never fire (there's a bug in the server implementation that prevents it from working). Use IIS Express or full IIS.

Why do I see a 301/302 then 403/404 sometimes

Do you have a folder in your project called signalR at the root? If yes, rename it so something else. The common convention for naming the folder with Hub classes is calling that folder Hubs.

Clone this wiki locally