UWAGA: Ktoś jeszcze zadał to pytanie, ale usunął je, zanim mogłem opublikować odpowiedź. Ponieważ to pytanie dotyczy wielu problemów, z jakimi borykają się deweloperzy próbując uczynić SignalR pracą w różnych domenach, zdecydowałem się je powielić. Dodatkowo, już skończyłem pisać odpowiedź!Połączenie międzydomenowe nie działa z SignalR PersistentConnection
Używam serwera SignalR 1.0.1 w projekcie ASP.NET MVC .NET Framework 4. Mam inną aplikację ASP.NET na innej domenie (inny port localhost) próbując połączyć się za pośrednictwem klienta JavaScript. Mam to kiedy moja aplikacja próbuje połączyć:
XMLHttpRequest cannot load http://localhost:31865/api/negotiate?_=1363105027533.
Origin http://localhost:64296 is not allowed by Access-Control-Allow-Origin.
I już po wszelkie kroki, aby włączyć obsługę cross-domeny z SignalR - Czego mi brakuje?
jQuery.support.cors = true;
$.connection('http://localhost:31865/api', '', false, { jsonp: true, xdomain: true });
RouteTable.Routes.MapHubs(new HubConfiguration { EnableCrossDomain = true });
RouteTable.Routes.MapConnection<ApiConnection>("/api", "api");
Dodałem też następujące do Web.config w projekcie API:
<system.webServer>
<httpProtocol>
<customHeaders>
<add name="Access-Control-Allow-Origin" value="*" />
</customHeaders>
</httpProtocol>
</system.webServer>
jestem u śpiewaj PersistentConnection dla mojego serwera SignalR, a nie dla koncentratorów.
Wszelkie pomysły?
Witam @ halter73, czy możesz dostarczyć mi wersję demo dla wielu pokojów rozmów przy użyciu signalR. Chcę zaimplementować serwer czatu, taki jak chat.stackoverflow.com LUB dowolny link. Proszę pomóż mi. Mam demo, ale nie działa. czy mogę przesłać e-mailem moje demo? –
mój identyfikator to: [email protected] jeśli masz jakieś demo, wyślij mi. –