Share via


A Relay Hybrid Csatlakozás ions WebSockets használatának első lépései a Node.js

Ebben a rövid útmutatóban Node.js küldő- és fogadóalkalmazásokat hoz létre, amelyek hibrid Csatlakozás ions WebSockets használatával küldenek és fogadnak üzeneteket az Azure Relayben. Az Azure Relay általános megismeréséhez tekintse meg az Azure Relayt.

Ebben a rövid útmutatóban a következő lépéseket kell elvégeznie:

  1. Relay-névtér létrehozása az Azure Portal használatával.
  2. Hibrid kapcsolat létrehozása ezen a névtéren az Azure Portal használatával.
  3. Kiszolgálói (figyelő) konzolalkalmazás írása üzenetfogadási céllal.
  4. Ügyfél-konzolalkalmazás (küldő) írása üzenetküldési céllal.
  5. Alkalmazások futtatása.

Előfeltételek

Névtér létrehozása

  1. Jelentkezzen be az Azure Portalra.

  2. Válassza az Összes szolgáltatás lehetőséget a bal oldali menüben. Válassza az Integráció lehetőséget, keresse meg a Továbbítókat, vigye az egeret a Továbbítók fölé, majd válassza a Létrehozás lehetőséget.

    Képernyőkép a Relays –> Létrehozás gomb kiválasztásáról.

  3. A Névtér létrehozása lapon kövesse az alábbi lépéseket:

    1. Válasszon egy Azure-előfizetést, amelyben létre szeretné hozni a névteret.

    2. Erőforráscsoport esetén válasszon ki egy meglévő erőforráscsoportot, amelyben elhelyezi a névteret, vagy hozzon létre egy újat.

    3. Adja meg a Relay névtér nevét.

    4. Válassza ki azt a régiót, amelyben a névteret üzemeltetni kell.

    5. Válassza a Véleményezés + létrehozás lehetőséget a lap alján.

      Képernyőkép a Névtér létrehozása lapról.

    6. A Véleményezés + létrehozás lapon válassza a Létrehozás lehetőséget.

    7. Néhány perc múlva megjelenik a névtér Relay lapja.

      Képernyőkép a Relay névtér kezdőlapjáról.

Felügyeleti hitelesítő adatok lekérése

  1. A Relay lapon válassza a megosztott hozzáférési szabályzatokat a bal oldali menüben. `

  2. A Megosztott hozzáférési szabályzatok lapon válassza a RootManageSharedAccessKey lehetőséget.

  3. Az SAS-szabályzat: RootManageSharedAccessKey területen válassza a Másolás gombot az elsődleges Csatlakozás ion-sztring mellett. Ez a művelet a vágólapra másolja a kapcsolati sztring későbbi használatra. Illessze be ezt az értéket a Jegyzettömbbe vagy egy másik ideiglenes helyre.

  4. A későbbi használat érdekében ismételje meg az előző lépést, és másolja ki és illessze be az Elsődleges kulcs értékét egy ideiglenes helyre.

    Képernyőkép a Relay névtér kapcsolati adatairól.

Hibrid kapcsolat létrehozása

A névtér Relay lapján kövesse az alábbi lépéseket egy hibrid kapcsolat létrehozásához.

  1. A bal oldali menü Entitások alatt válassza a Hibrid Csatlakozás ions, majd a + Hibrid Csatlakozás ion lehetőséget.

    Képernyőkép a Hibrid Csatlakozás ions oldalról.

  2. A Hibrid Csatlakozás ion létrehozása lapon adja meg a hibrid kapcsolat nevét, és válassza a Létrehozás lehetőséget.

    Képernyőkép a Hibrid Csatlakozás ion létrehozása oldalról.

Kiszolgálói alkalmazás (figyelő) létrehozása

Írjon egy Node.js-konzolalkalmazást az üzenetek figyeléséhez és a Relaytől való fogadásához.

Node.js alkalmazás létrehozása

Hozzon létre egy listener.js nevű JavaScript-fájlt.

A Relay-csomag hozzáadása

Futtassa az npm install hyco-ws parancsot a projektmappában lévő Csomópont parancssorból.

Írjon egy kódrészletet az üzenetek fogadásához

  1. Adja hozzá a következő állandót a listener.js fájl elejéhez.

    const WebSocket = require('hyco-ws');
    
  2. Adja hozzá a következő állandókat a listener.js fájlhoz a hibrid kapcsolat részleteivel. Cserélje le a zárójelben lévő helyőrzőket a hibrid gyűjtemény létrehozásakor beszerzett megfelelő értékekre.

    • const ns – A Relay-névtér. Ügyeljen arra, hogy a teljes névtérnevet használja, például: {namespace}.servicebus.windows.net.
    • const path – A hibrid kapcsolat neve.
    • const keyrule- A megosztott hozzáférési szabályzatok kulcsának neve, amely alapértelmezés szerint.RootManageSharedAccessKey
    • const key - A korábban mentett névtér elsődleges kulcsa.
  3. Adja a következő kódot a listener.js fájlhoz:

    var wss = WebSocket.createRelayedServer(
    {
        server : WebSocket.createRelayListenUri(ns, path),
        token: WebSocket.createRelayToken('http://' + ns, keyrule, key)
    }, 
    function (ws) {
        console.log('connection accepted');
        ws.onmessage = function (event) {
            console.log(event.data);
        };
        ws.on('close', function () {
            console.log('connection closed');
        });       
    });
    
    console.log('listening');
    
    wss.on('error', function(err) {
        console.log('error' + err);
    });
    

    Így kell kinéznie a listener.js fájlnak:

    const WebSocket = require('hyco-ws');
    
    const ns = "{RelayNamespace}";
    const path = "{HybridConnectionName}";
    const keyrule = "{SASKeyName}";
    const key = "{SASKeyValue}";
    
    var wss = WebSocket.createRelayedServer(
        {
            server : WebSocket.createRelayListenUri(ns, path),
            token: WebSocket.createRelayToken('http://' + ns, keyrule, key)
        }, 
        function (ws) {
            console.log('connection accepted');
            ws.onmessage = function (event) {
                console.log(event.data);
            };
            ws.on('close', function () {
                console.log('connection closed');
            });       
    });
    
    console.log('listening');
    
    wss.on('error', function(err) {
        console.log('error' + err);
    });
    

Ügyfélalkalmazás létrehozása (küldő)

Írjon egy Node.js konzolalkalmazást az üzenetek a Relay számára való küldéséhez.

Node.js alkalmazás létrehozása

Hozzon létre egy sender.js nevű JavaScript-fájlt.

A Relay Node Csomagkezelő csomag hozzáadása

Futtassa az npm install hyco-ws parancsot a projektmappában lévő Csomópont parancssorból.

Írjon egy kódrészletet üzenetek küldéséhez

  1. Adja hozzá a következő constants utasítást a sender.js fájl elejéhez.

    const WebSocket = require('hyco-ws');
    const readline = require('readline')
        .createInterface({
            input: process.stdin,
            output: process.stdout
        });;
    
  2. Adja hozzá a következő állandókat a sender.js fájlhoz a hibrid kapcsolat részleteivel. Cserélje le a zárójelben lévő helyőrzőket a hibrid gyűjtemény létrehozásakor beszerzett megfelelő értékekre.

    • const ns – A Relay-névtér. Ügyeljen arra, hogy a teljes névtérnevet használja, például: {namespace}.servicebus.windows.net.
    • const path – A hibrid kapcsolat neve.
    • const keyrule- A megosztott hozzáférési szabályzatok kulcsának neve, amely alapértelmezés szerint.RootManageSharedAccessKey
    • const key - A korábban mentett névtér elsődleges kulcsa.
  3. Adja a következő kódot a sender.js fájlhoz:

    WebSocket.relayedConnect(
        WebSocket.createRelaySendUri(ns, path),
        WebSocket.createRelayToken('http://'+ns, keyrule, key),
        function (wss) {
            readline.on('line', (input) => {
                wss.send(input, null);
            });
    
            console.log('Started client interval.');
            wss.on('close', function () {
                console.log('stopping client interval');
                process.exit();
            });
        }
    );
    

    Így kell kinéznie a sender.js fájlnak:

    const WebSocket = require('hyco-ws');
    const readline = require('readline')
        .createInterface({
            input: process.stdin,
            output: process.stdout
        });;
    
    const ns = "{RelayNamespace}";
    const path = "{HybridConnectionName}";
    const keyrule = "{SASKeyName}";
    const key = "{SASKeyValue}";
    
    WebSocket.relayedConnect(
        WebSocket.createRelaySendUri(ns, path),
        WebSocket.createRelayToken('http://'+ns, keyrule, key),
        function (wss) {
            readline.on('line', (input) => {
                wss.send(input, null);
            });
    
            console.log('Started client interval.');
            wss.on('close', function () {
                console.log('stopping client interval');
                process.exit();
            });
        }
    );
    

Az alkalmazások futtatása

  1. Futtassa a kiszolgálóalkalmazást: egy Node.js-parancssorba írja be a következőt: node listener.js.

  2. Futtassa az ügyfélalkalmazást: egy Node.js parancssorba írja be a node sender.js parancsot, majd írjon be szöveget.

  3. Győződjön meg arról, hogy az alkalmazás konzolja kiírja a szöveget, amely az ügyfélalkalmazásban lett megadva.

    A konzolablakok mind a kiszolgálói, mind az ügyfélalkalmazásokat tesztelik.

Gratulálunk, végpontok közötti hibrid kapcsolatok alkalmazást hozott létre a Node.js használatával.

Következő lépések

Ebben a rövid útmutatóban Node.js ügyfél- és kiszolgálóalkalmazásokat hozott létre, amelyek WebSockets használatával küldtek és fogadtak üzeneteket. Az Azure Relay hibrid Csatlakozás ions funkciója a HTTP használatával is támogatja az üzenetek küldését és fogadását. Ha meg szeretné tudni, hogyan használhatja a HTTP-t az Azure Relay hibrid Csatlakozás ionokkal, tekintse meg a Node.js HTTP rövid útmutatóját.

Ebben a rövid útmutatóban Node.js használt ügyfél- és kiszolgálóalkalmazások létrehozásához. Az ügyfél- és kiszolgálóalkalmazások .NET-keretrendszer használatával történő írásáról a .NET WebSockets rövid útmutatója vagy a .NET HTTP rövid útmutatója nyújt további információt.