WebSocket と JavaScript を使用してオンライン翻訳システムを実装する方法
はじめに:
インターネットの発展に伴い、翻訳サービスはますます注目を集めています。と要求します。 WebSocketとJavaScriptを利用してオンライン翻訳システムを実現することで、リアルタイムに翻訳結果を得ることができ、翻訳効率が向上します。この記事では、WebSocket と JavaScript を使用してこの機能を実現する方法と、具体的なコード例を紹介します。
ステップ 1: クライアントで WebSocket 接続を作成する
まず、HTML ファイル内に WebSocket オブジェクトを作成し、サーバーに接続します。これは、WebSocket コンストラクターを使用して実現されます。
const socket = new WebSocket('ws://localhost:8080');
上記のコードでは、接続アドレスを ws://localhost:8080 に設定していますが、実際の状況に応じてアドレスを変更できます。
ステップ 2: 翻訳リクエストの送信
テキスト ボックスの入力イベントをリッスンすることにより、ユーザーがコンテンツを入力した後、そのコンテンツを WebSocket サーバーに送信します。
const inputElement = document.getElementById('input'); inputElement.addEventListener('input', () => { const message = { type: 'translate', content: inputElement.value }; socket.send(JSON.stringify(message)); });
上記のコードでは、ユーザーの入力をメッセージ オブジェクトにカプセル化し、サーバーに送信します。
ステップ 3: 翻訳結果を受信する
WebSocket の onmessage イベントを使用して、サーバーから送信されたメッセージをリッスンし、メッセージ タイプに応じて処理します。
socket.onmessage = (event) => { const message = JSON.parse(event.data); if (message.type === 'translation') { const translationElement = document.getElementById('translation'); translationElement.innerHTML = message.content; } };
上記のコードでは、まずサーバーから送信されたメッセージを解析して JSON オブジェクトに変換します。メッセージタイプが翻訳の場合、指定した要素に翻訳結果が表示されます。
ステップ 4: サーバー側ロジックの実装
サーバー側では、WebSocket 接続リクエストをリッスンし、変換リクエストを処理する必要があります。
const WebSocket = require('ws'); const wss = new WebSocket.Server({ port: 8080 }); wss.on('connection', (ws) => { ws.on('message', (message) => { const request = JSON.parse(message); if (request.type === 'translate') { // 在这里实现翻译逻辑 const translation = translate(request.content); const response = { type: 'translation', content: translation } ws.send(JSON.stringify(response)); } }); });
上記のコードでは、まず WebSocket サーバーを作成し、ポート 8080 をリッスンします。次に、サーバーの接続イベントでクライアントの WebSocket 接続リクエストをリッスンし、メッセージ イベントで変換リクエストを処理します。クライアントから要求された内容に応じて、サーバー側で翻訳関数が呼び出されて翻訳され、翻訳結果は応答オブジェクトにカプセル化されてクライアントに返されます。
以上がWebSocket と JavaScript を使用してオンライン翻訳システムを実装する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。