SignalR を使用して Chrome 拡張機能としてチャット スタイルのアプリを作成しようとしています。使用していた SignalR を 1.1.3 から 2.0.0 に更新しようとしました。
拡張機能をロードすると、次のエラーが表示されます。
Uncaught Error: SignalR: Error loading hubs. Ensure your hubs reference is correct, e.g. <script src='/signalr/js'></script>.
HTML にスクリプトがある場合でも、GET エラーと共にエラーが表示されます。
また、次のことも試しました。
<script src="/signalr/hubs"></script>
これは私たちの接続設定です:
connection = $.hubConnection('http://ourUrl');
その前に、これを使用してチャットをセットアップしました。
var chat = $.connection.chatHub;
これが現在の chatProxy セットアップです。
chatProxy = connection.createHubProxy('chatHub');
初期設定ではチャット プロキシを使用していませんでした。
これらの後には、hub.start が続きます。
$.connection.hub.start().done(function () {
以下を使用してハブを呼び出しています。
chatProxy.invoke('methodName',
以下を使用してハブを呼び出していました。
chat.server.methodName()
以下を使用して、ハブが呼び出す関数をセットアップしていました。
chat.client.functionName = function (token) {
現在、このシステムを使用して、ハブが呼び出す関数をセットアップしています。
chatProxy.on('loginSuccess', function (token) {
基本的に signalR 2.0.0 チュートリアルに完全に従っているため、なぜエラーが発生するのか、コードを修正する方法がわかりません。Chrome 拡張機能での機能は、Web アプリでの機能とは異なるようです。どんなアイデアや意見も参考になります、ありがとう。
編集:マニフェストは次のようになります。
{
"name": "String",
"description": "String",
"version": "1.2",
"app": {
"background": {
"scripts": ["/js/background.js", "/js/jquery-2.0.3.js", "/js/window.js", "/js/jquery.signalR-2.0.0.min.js"]
}
},
"icons": { "16": "/images/icon16.png", "128": "/images/icon128.png" },
"permissions": [ "http://ourUrl/" ]
}
すべての JavaScript コードは、document.ready() の先頭にあります。window.js 内。