Csatlakozás webes alkalmazáshoz webes alkalmazásból

A feladat: az adatok valós idejű továbbítása az alkalmazásból, a socket szerverhez kapcsolódva a felhasználókhoz. Ez lehetővé teszi számukra, hogy az oldal újratöltése nélkül azonnal láthassák ezeket az adatokat.

Nekem volt egy feladata, hogy valamilyen oldalt készítsen az alkalmazások megfigyelésére. Az oldalon valós időben, mint élő szalag, adatok vannak az eseményekről.

Használt a yii2 és a Ratchet.

A munkához a php zmq kiterjesztését kell telepíteni. Az arch linux rendszert használom, és telepítettem a csomagot aur php-zmq-ból. Ezután zeneszerző segítségével telepítse a Ratchet, React / ZMQ (zmq php kiterjesztést igényel):

Példaként szolgálunk egy szerver indításához a Ratchet dokumentációjából, és létrehozunk egy vezérlőt a konzolalkalmazáshoz.

Tovább a kliens oldalon, a nézetben (a webes alkalmazás oldalon szükségünk van), külső js fájlt csatlakoztatunk,

Ezután hozzon létre egy osztályt, amely végrehajtja a WampServerInterface alkalmazást. Az onSubscribe metódus akkor hívódik meg, amikor a felhasználó ("kliens") a kiszolgálóhoz csatlakozik. Az onPushEventData módszerrel egy esemény megszakad, amikor a kiszolgáló elindul. Segítségével "továbbítjuk" az adatokat az ügyfélnek. Ebben az osztályban az easy print_r () a kód hibakeresésére alkalmas. Az adatok a konzolra kerülnek.

Ha létrehozta a kiszolgáló indító vezérlőjét az alkalmazás / parancsok mappában (alapértelmezés szerint az alapalkalmazásban yii2 'controllerNamespace' => 'app \ parancsok'), elindíthatja és tesztelheti a munkát. Ha a parancs nem látható a php yii kérésekor, akkor konfigurálja a controllerNamespace-ot a konfigurációban vagy a modulban.

Győződhet meg róla, hogy a kiszolgáló elindul a következő paranccsal: sudo netstat -tulpn

Azt is ellenőrizze, hogy ez nem "tette" fel a szervert, és a webhely működik. ) Amikor a kapcsolódás oldalára lép, a konzolnak nincs kapcsolathiba ws: //127.0.0.1: 8080-ra.

Minden készen áll. Most implementáljuk a zmq mágia webes alkalmazásunkat. A kiszolgálóhoz csatlakozunk, és ott továbbítjuk az adatokat. Az én esetemben ez az esemény adata.

Most mindennek működnie kell. Remélem, ez segít valakinek és felgyorsítja munkáját. Üdvözöljük a hibák feltüntetését, a témával kapcsolatos elméleti információkat és a véglegesítést.

Kapcsolódó cikkek