Server.Socket 外部オブジェクトおよび
プログレス インジケータ ユーザー コントロールの機能を利用するための要件は同じです。以下に詳細を記載します:
- Internet Explorer 10
- Mozilla Firefox 7 以降
- Google Chrome 14 以降
- Safari 5
- Safari for iOS 4.2.1
Java では、実装は JSR 356 (Java API for WebSocket) に基づきます。
- Java 8
- Java EE 8 互換アプリケーションサーバー (最小要件: Tomcat 8)
- JVM 1.8 で実行されている Servlet サーバー
- IIS8 以降 (Window 8 以降/Windows Server 2012 以降)
- .NET Framework 4.5
- IIS8 'WebSocket' モジュールがインストールされている必要があります。Windows 8 用のこのモジュールをインストールするには、次を実行します:
- コントロールパネルで Windows ボタンをクリックします。
- タイプ: Windows の機能の有効化または無効化
- 操作: [ インターネット インフォメーション サービス ] -> [ World Wide Web サービス ] -> [ アプリケーション開発機能 ] と選択します。
- “WebSocket プロトコル” を選択し、 [ OK ] をクリックします。
- 次のアセンブリを使用する .NET 実装- Microsoft.WebSockets.dll
- GXWebSocket.dll
- .NET ジェネレーターの [ Compiler Path ] プロパティが、.NET Framework v4.0 (通常は "C:\Windows\Microsoft.NET\Framework\v4.0.30319\csc.exe") を使用するように設定されている必要があります。
- IIS のアプリケーションプールが、.NET Framework v4.0 を使用して実行されるように設定されている必要があります。
- [ IIS Version ] プロパティ = IIS8
- この Web アプリケーションは Smooth (フル Ajax) でなければなりません。つまり、バージョンプロパティ Web User Experience = Smooth とする必要があります。
1.
CloudServices.config ファイルがデプロイメントにあることを確認します。このファイルは必須です。
2.web.config を確認してください:
<httpRuntime requestValidationMode="2.0" targetFramework="4.5" />
//次の行が存在
しないこと:
<compilation>
<assemblies>
<remove assembly="GXWebSocket" />
<remove assembly="Microsoft.WebSockets" />
</assemblies>
</compilation>
3Framework 2.0 でコンパイルし、ASP.net 2.x で実行していると、次のメッセージが返されます:
FileLoadException: Could not load file or assembly 'log4net, Version=1.2.11.0, Culture=neutral,
PublicKeyToken=669e0ddf0bb1aa2a' or one of its dependencies.
The located assembly's manifest definition does not match the assembly reference.(Exception from HRESULT: 0x80131040)
SuperSocket.SocketBase.Logging.Log4NetLogFactory..ctor(String log4netConfig) +0
解決方法: Apply Requirements
4.Web Socket Protocol をインストールしていない場合は、Web コンソールに次のエラー (またはこれに類似したもの) が表示されます。
Firefox can’t establish a connection to the server at
ws://localhost/WebAppName/gxwebsocket.svc?6977921532b3f2ecd1022896025d931c6062249c.
5Tomcat が Apache と接続されている場合、Web 通知を行うための 1 つの可能性のあるソリューションは、次のとおりです:
Apache 設定ファイルで次のエントリーを定義します:
- ProxyPass /<Web アプリケーション名>/gxwebsocket ws://127.0.0.1:8280/<Web アプリケーション名>/gxwebsocket
- ProxyPassReverse /<Web アプリケーション名>/gxwebsocket ws://127.0.0.1:8280/<Web アプリケーション名>/gxwebsocket
そして、Apache で proxy_wstunnel モジュールを有効にします。
- .NET 環境 (Windows 10) は 10 を超える WebSocket の同時接続をサポートしません。
Windows 10 IIS v10.0
Home: No IIS *We Think*
Pro: simultaneous request execution limit of 10, allows multiple sites *We Think*
Enterprise: simultaneous request execution limit of 10, allows multiple sites *We Think*
Education: unknown at this time IoT
Core: unknown at this time