Maison interface Web Tutoriel H5 Comment refléter le bureau distant noVNC dans le projet Vue

Comment refléter le bureau distant noVNC dans le projet Vue

Mar 27, 2018 pm 02:54 PM
远程

Cette fois, je vais vous montrer comment mapper le bureau distant noVNC dans le projet vue. Quelles sont les précautions pour mapper le bureau distant noVNC dans le projet vue. Ce qui suit est un cas pratique, prenons un. regarder.

1. Tout d’abord, présentons brièvement le concept.

VNCServer est un service démarré sur le serveur pour satisfaire les utilisateurs distribués partageant les ressources du serveur. Le logiciel client correspondant inclut le client graphique VNCViewer, tandis que noVNC est un client HTML5 VNC, qui est implémenté en utilisant HTML. 5 WebSocket, Canvas et JavaScript.

noVNC est largement utilisé dans les principaux panneaux de contrôle du cloud computing et des machines virtuelles. noVNC est implémenté à l'aide de WebSockets, mais la plupart des serveurs VNC actuels ne prennent pas en charge les WebSockets, donc noVNC ne peut pas se connecter directement au serveur VNC. Au lieu de cela, un proxy doit être activé pour effectuer la conversion entre WebSockets et sockets TCP. Ce proxy s'appelle websockify.

2. Il existe une telle exigence dans le projet. Il existe plusieurs pages de fonctions dans le système, mais les fonctions incluent également les fonctions d'origine sur le terminal physique (Y compris le dernier client de terminal virtuel sur l'ordinateur), qui utilise noVNC. L'avantage est que vous pouvez intégrer d'autres systèmes fonctionnels (ou pages) dans de nouveaux projets, et vous pouvez également cliquer pour faire fonctionner les fonctions ci-dessus, etc., ce qui peut résoudre temporairement certains problèmes.

3. Puisque le cadre du projet est vue, voici les parties d'implémentation frontales

Tout d'abord, présentez la bibliothèque noVNC. Il existe deux façons de l'introduire. La première consiste à télécharger directement le code source dans votre propre projet. Certains problèmes liés à cette méthode sont présentés en détail ci-dessous.

git clone git://github.com/novnc/noVNC
Copier après la connexion
Deuxièmement, si vous utilisez webpack, vous pouvez le faire. utilisez npm. L'installation des dépendances est plus pratique.

npm install @novnc/novnc
Copier après la connexion

Ce qui suit est la partie détaillée du code

HTML

<template> 
 <p class="page-home" ref="canvas"> 
 <canvas id="noVNC_canvas" width="800" height="600"> 
 Canvas not supported. 
 </canvas> 
 </p> 
</template>
Copier après la connexion

Script

import WebUtil from '../../noVNC/app/webutil.js' 
 
import Base64 from '../../noVNC/core/base64.js' 
import Websock from '../../noVNC/core/websock.js' 
import '../../noVNC/core/des.js' 
import '../../noVNC/core/input/keysymdef.js' 
import '../../noVNC/core/input/xtscancodes.js' 
import '../../noVNC/core/input/util.js' 
import {Keyboard, Mouse} from '../../noVNC/core/input/devices.js' 
import Display from '../../noVNC/core/display.js' 
import '../../noVNC/core/inflator.js' 
import RFB from '../../noVNC/core/rfb.js' 
import '../../noVNC/core/input/keysym.js'
Copier après la connexion
Puisque la première méthode d'importation est utilisée, la méthode d'importation est utilisée pour introduire les ressources. Il convient de noter que lors de l'introduction de certains fichiers, le projet est basé sur la syntaxe es6, donc la manière d'introduire des js externes est légèrement différente. Par exemple, lors de l'introduction du fichier webutil.js, vous devez ajouter la valeur par défaut d'exportation avant de pouvoir l'utiliser correctement. Vous pouvez légèrement modifier le fichier lors de l'importation. Il y a des notes et des descriptions correspondantes dans le fichier.

Une fois les ressources importées, l'étape suivante consiste à savoir comment les utiliser, ce qui n'est en fait pas compliqué. Pas grand chose à dire, commençons.

connectVNC () {
 var
  DEFAULT_HOST = '',
  DEFAULT_PORT = '',
  DEFAULT_PASSWORD = "",
  DEFAULT_PATH = "websockify"
 ;
 var cRfb = null;
 var oTarget = document.getElementById("noVNC_canvas");
 let that = this
 if (!this.currentEquipment) {
  return
 }
 let novncPort = this.currentEquipment.novncPort
 getNovncIp().then(function (resData) {
  WebUtil.init_logging(WebUtil.getConfigVar("logging", "warn"));
  var sHost = resData.data.content.ip || DEFAULT_HOST,
  nPort = novncPort || DEFAULT_PORT,
  sPassword = DEFAULT_PASSWORD,
  sPath = DEFAULT_PATH
  ;
  cRfb = new RFB({
  "target": oTarget,<span class="space" style="white-space:pre;display:inline-block;text-indent:2em;line-height:inherit;"> // 目标</span>
  "focusContainer": top.document, // 鼠标焦点定位
  "encrypt": WebUtil.getConfigVar("encrypt", window.location.protocol === "https:"),
  "repeaterID": WebUtil.getConfigVar("repeaterID", ""),
  "true_color": WebUtil.getConfigVar("true_color", true),
  "local_cursor": WebUtil.getConfigVar("cursor", true),
  "shared": WebUtil.getConfigVar("shared", true),
  "view_only": WebUtil.getConfigVar("view_only", false),
  "onFBUComplete": that._onCompleteHandler, // 回调函数
  "onDisconnected": that._disconnected // 断开连接
  });
  // console.log('sHost:' + sHost + '--nPort:' + nPort)
  cRfb.connect(sHost, nPort, sPassword, sPath);
 })
 },
Copier après la connexion
Tout d'abord, une méthode est définie dans les méthodes

cycle de vie, et les opérations liées à l'initialisation y sont écrites. Appelez ensuite this.connectVnc() dans le cycle de vie monté. Il doit être appelé dans ce cycle de vie, sinon la structure DOM ne peut pas être obtenue si le canevas n'est pas initialisé.

Une description simple consiste à instancier un objet, y compris certaines méthodes ou attributs utilisés, puis à appeler la méthode connect et à transmettre les paramètres d'hôte, de port, de mot de passe et de chemin pour établir une connexion.

Il existe deux méthodes, l'une est le callback_.onCompleteHandler une fois la connexion réussie, et l'autre est le callback_disconnected une fois la connexion réussie

// 远程桌面连接成功后的回调函数 
 _onCompleteHandler (rfb, fbu) { 
 // 清除 onComplete 的回调。 
 rfb.set_onFBUComplete(function () { 
 }); 
 
 var oDisplay = rfb.get_display(), 
  nWidth = oDisplay.get_width(), 
  nHeight = oDisplay.get_height(), 
 
  oView = oDisplay.get_target(), 
  nViewWidth = oView.clientWidth, 
  nViewHeight = oView.clientHeight 
 ; 
 
 // 设置当前与实际的比例。 
 oDisplay.setScale(nWidth / nViewWidth, nHeight / nViewHeight); 
 
 }
Copier après la connexion
Vous pouvez définir certaines informations sur les paramètres après la connexion est réussie. Ou la taille de l'écran, etc.

Après avoir effectué les opérations ci-dessus, vous pouvez voir un écran de bureau à distance sur la page Web.

Un simple bureau à distance peut être utilisé. Si vous avez d'autres paramètres ou exigences, veuillez vous référer au site officiel

Cliquez pour ouvrir le lien. Ou contactez-moi pour en discuter

Je pense que vous maîtrisez la méthode après avoir lu le cas dans cet article. Pour des informations plus intéressantes, veuillez prêter attention aux autres articles connexes sur le site Web chinois de php !

Lecture recommandée :

Comment créer un graphique dynamique 3D avec Canvas

Mise à l'échelle des pages mobiles H5

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Comment déverrouiller tout dans Myrise
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Le Bureau à distance ne peut pas authentifier l'identité de l'ordinateur distant Le Bureau à distance ne peut pas authentifier l'identité de l'ordinateur distant Feb 29, 2024 pm 12:30 PM

Le service Bureau à distance Windows permet aux utilisateurs d'accéder aux ordinateurs à distance, ce qui est très pratique pour les personnes qui doivent travailler à distance. Cependant, des problèmes peuvent survenir lorsque les utilisateurs ne peuvent pas se connecter à l'ordinateur distant ou lorsque Remote Desktop ne peut pas authentifier l'identité de l'ordinateur. Cela peut être dû à des problèmes de connexion réseau ou à un échec de vérification du certificat. Dans ce cas, l'utilisateur devra peut-être vérifier la connexion réseau, s'assurer que l'ordinateur distant est en ligne et essayer de se reconnecter. De plus, s'assurer que les options d'authentification de l'ordinateur distant sont correctement configurées est essentiel pour résoudre le problème. De tels problèmes avec les services Bureau à distance Windows peuvent généralement être résolus en vérifiant et en ajustant soigneusement les paramètres. Le Bureau à distance ne peut pas vérifier l'identité de l'ordinateur distant en raison d'un décalage d'heure ou de date. Veuillez vous assurer que vos calculs

Comment faire en sorte qu'une connexion de bureau à distance affiche la barre des tâches de l'autre partie Comment faire en sorte qu'une connexion de bureau à distance affiche la barre des tâches de l'autre partie Jan 03, 2024 pm 12:49 PM

De nombreux utilisateurs utilisent la connexion Bureau à distance. De nombreux utilisateurs rencontreront des problèmes mineurs lors de son utilisation, tels que le fait que la barre des tâches de l'autre partie ne s'affiche pas. En fait, il s'agit probablement d'un problème avec les paramètres de l'autre partie. solutions ci-dessous. Comment afficher la barre des tâches de l'autre partie lors d'une connexion Bureau à distance : 1. Tout d'abord, cliquez sur "Paramètres". 2. Ouvrez ensuite « Personnalisation ». 3. Sélectionnez ensuite « Barre des tâches » sur la gauche. 4. Désactivez l'option Masquer la barre des tâches dans l'image.

Six outils de connexion à distance couramment utilisés, lequel préférez-vous ? Six outils de connexion à distance couramment utilisés, lequel préférez-vous ? Feb 22, 2024 pm 06:28 PM

Xshell "Xshell" est un puissant logiciel d'émulation de terminal sécurisé prenant en charge les protocoles SSH1, SSH2 et le protocole TELNET de la plateforme Windows. En utilisant Xshell sous l'interface Windows, les utilisateurs peuvent facilement accéder à des serveurs distants et réaliser des opérations de terminal de contrôle à distance. En outre, Xshell propose également divers schémas de couleurs d'apparence et choix de styles, permettant aux utilisateurs de personnaliser en fonction de leurs préférences personnelles et d'améliorer l'expérience utilisateur. Les fonctionnalités et avantages de Xshell sont les suivants : Gestion de session : utilisez le gestionnaire de session et les configurations de session héritables pour créer, modifier et démarrer facilement des sessions. Prise en charge complète : prend en charge plusieurs méthodes de vérification, protocoles ou algorithmes pour gérer diverses situations. coquille locale

Comment apprendre et utiliser les commandes de connexion à distance Comment apprendre et utiliser les commandes de connexion à distance Jan 12, 2024 pm 07:57 PM

Pour de nombreux ingénieurs impliqués dans l'exploitation et la maintenance, la connexion à distance Windows est très importante. Une utilisation compétente des commandes à distance peut grandement améliorer l'efficacité du travail. Aujourd'hui, je vais expliquer comment utiliser les commandes de connexion à distance. Le système d'exploitation Microsoft Windows possède sa propre fonction de connexion à distance. Vous pouvez vous connecter à un ordinateur distant via la commande de connexion à distance. De nombreux amis ne savent pas comment utiliser la commande de connexion à distance. Comment utiliser la commande de connexion à distance 1. Appuyez sur la combinaison de touches Windows+R du clavier pour ouvrir la boîte de dialogue d'exécution, entrez la commande de connexion à distance mstsc dans la zone d'exécution et appuyez sur Entrée. Schéma de connexion à distance-12. Ensuite, la boîte de dialogue de connexion au bureau à distance apparaîtra. Entrez le nom de l'ordinateur ou l'adresse IP.

Un examen approfondi des protocoles de gestion à distance Linux : un guide complet de la pratique technique Un examen approfondi des protocoles de gestion à distance Linux : un guide complet de la pratique technique Feb 24, 2024 pm 02:18 PM

"Interprétation complète du protocole de gestion à distance Linux : un guide complet de pratique technique, des exemples de code spécifiques sont requis" Avec le développement rapide d'Internet, la gestion à distance des serveurs est devenue une méthode efficace de gestion des serveurs, et le protocole de gestion à distance sous le Le système Linux a attiré encore plus d'attention. Cet article expliquera en détail le protocole de gestion à distance Linux, fournira des stratégies de pratique technique détaillées et sera accompagné d'exemples de code spécifiques pour aider les lecteurs à comprendre et à mettre en pratique en profondeur la méthode de gestion à distance des serveurs. 1. Le protocole SSH SSH (SecureShell) est un

Menace de vulnérabilité d'exécution de code à distance Java Menace de vulnérabilité d'exécution de code à distance Java Aug 08, 2023 pm 03:21 PM

La menace des vulnérabilités d'exécution de code à distance Java Java est un langage de programmation puissant et largement utilisé par de nombreuses entreprises et développeurs pour créer des applications sécurisées et fiables. Cependant, même Java présente certaines failles de sécurité, dont l’une est la vulnérabilité d’exécution de code à distance. Cet article présentera la menace des vulnérabilités d’exécution de code à distance Java et fournira un exemple de code pour illustrer. Une vulnérabilité d'exécution de code à distance fait référence à une vulnérabilité dans laquelle un attaquant peut saisir du code malveillant pour amener l'application cible à exécuter le code. Cette vulnérabilité est généralement due à l'application

Comment gérer les erreurs de téléchargement d'images à distance PHP et générer les messages d'erreur correspondants Comment gérer les erreurs de téléchargement d'images à distance PHP et générer les messages d'erreur correspondants Aug 06, 2023 pm 07:57 PM

Comment gérer les erreurs de téléchargement d'images à distance PHP et générer les messages d'erreur correspondants Lors du développement d'applications Web, vous rencontrez souvent le besoin de télécharger des images à partir d'un serveur distant. Cependant, pour diverses raisons, vous pouvez rencontrer des erreurs lors du téléchargement d'images. Cet article explique comment gérer les erreurs de téléchargement d'images à distance en PHP et générer les messages d'erreur correspondants. Utilisez la fonction file_get_contents pour télécharger des images distantes. Vous pouvez utiliser la fonction file_get_contents en PHP pour télécharger des images distantes. Ci-dessous un bref

Démystifier le protocole de gestion à distance Linux : comprendre tous les aspects des applications technologiques Démystifier le protocole de gestion à distance Linux : comprendre tous les aspects des applications technologiques Feb 24, 2024 am 09:21 AM

Le protocole de gestion à distance Linux a toujours été un élément important de la gestion de réseau. Il a un large éventail d'applications, impliquant la gestion de serveurs, la maintenance à distance, la surveillance et d'autres aspects. Dans les systèmes Linux, il existe de nombreux protocoles de gestion à distance, parmi lesquels les plus courants incluent SSH, Telnet, VNC, etc. Cet article se concentrera sur ces protocoles, approfondira les applications techniques des protocoles de gestion à distance Linux et fournira des exemples de code spécifiques. 1.Le protocole SSH SSH (SecureShell) est un

See all articles