2012-04-03 7 views
13

को कैसे अक्षम कर सकता हूं, मैंने .NET 4.5 में अपग्रेड किया है, अब सिग्नल फ़ायरफ़ॉक्स/क्रोम में वेबस्केट्स का उपयोग करने पर जोरदार लगता है - भले ही मैं केवल विंडोज 7 पर हूं जिसमें वेबस्केट सर्वर नहीं है।सिग्नलआर - मैं वेबस्केट्स

अनुरोध स्पष्ट रूप से विफल रहता है:

Firefox can't establish a connection to the server at ws://www.site.local/signalr?connectionData= 

मैं कैसे WebSockets के बारे में भूल जाते हैं और लंबे समय से मतदान का उपयोग करने के लिए मजबूर SignalR है, या वहाँ विंडोज 7 है कि मैं याद कर रहा हूँ के लिए WebSockets स्थापित करने का एक तरीका है?

अद्यतन .... मैं SignalR 0.4 उपयोग कर रहा हूँ:

<package id="SignalR" version="0.4.0" /> 
    <package id="SignalR.Hosting.AspNet" version="0.4.0.0" /> 
    <package id="SignalR.Js" version="0.4.0.1" /> 
    <package id="SignalR.Server" version="0.4.0.0" /> 
    <package id="SignalR.StructureMap" version="0.4.1" /> 

उत्तर

25

मैं यहाँ जवाब मिला:

https://github.com/SignalR/SignalR/wiki/SignalR-JS-Client

मूल रूप से

:

$.connection.hubs.start({ transport: 'longPolling' }, function() { 
    console.log('connection started!'); 
}); 
+1

सिग्नलआर 0.4 में अपडेट करें और यह सर्वर केवल इसका समर्थन करेगा यदि सर्वर इसका समर्थन करता है। – davidfowl

+0

मैं सिग्नलआर 0.4 का उपयोग कर रहा हूं (ऊपर मेरा अपडेट देखें) – reach4thelasers

+0

यदि आप .NETFramework 4.5 पर हैं तो यह हमेशा websockets का उपयोग करने का प्रयास करेगा क्योंकि अभी इसका पता लगाने का कोई अच्छा तरीका नहीं है। – davidfowl

8

आदेश में करने के लिए सर्वर पक्ष पर एक परिवहन अक्षम करें, आपको इस तरह कुछ उपयोग करना होगा:

using Microsoft.AspNet.SignalR; 
using Microsoft.AspNet.SignalR.Transports; 
using Owin; 
namespace MyApplication 
{ 
    public static class Startup 
    { 
     public static void ConfigureSignalR(IAppBuilder app) 
     { 
      // If using the global dependency resolver 
      TurnOfForeverFrame(GlobalHost.DependencyResolver); 
      app.MapSignalR(); 
     } 
     public static void TurnOfForeverFrame(IDependencyResolver resolver) 
     { 
      var transportManager = resolver.Resolve<ITransportManager>() as TransportManager; 
      transportManager.Remove("foreverFrame"); 
     } 
    } 
} 

@ access4thelasers 'समाधान केवल क्लाइंट में इसे अक्षम करता है, लेकिन ग्राहक परिवहन को फिर से सक्षम कर सकता है और कनेक्ट कर सकता है।

चीयर्स।