mirror of
https://github.com/tidys/cc-inspector-chrome
synced 2025-04-19 16:38:41 +00:00
socket 调试
This commit is contained in:
parent
e3215376df
commit
24f778de84
9
electron-app/index.css
Normal file
9
electron-app/index.css
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
.sendCode {
|
||||||
|
width: 100%;
|
||||||
|
height: 300px;
|
||||||
|
margin-top: 10px;
|
||||||
|
margin-bottom: 10px;
|
||||||
|
}
|
||||||
|
.recvMsgError{
|
||||||
|
color: red;
|
||||||
|
}
|
34
electron-app/index.html
Normal file
34
electron-app/index.html
Normal file
@ -0,0 +1,34 @@
|
|||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<script src="lib/vue.js"></script>
|
||||||
|
<link rel="stylesheet" href="index.css">
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<div id="app">
|
||||||
|
<div>
|
||||||
|
链接状态:{{status}}
|
||||||
|
</div>
|
||||||
|
<div v-show="webSocketInstance">
|
||||||
|
<div style="display: flex;flex-direction: column;">
|
||||||
|
<span>收到的消息:</span>
|
||||||
|
<label>
|
||||||
|
<textarea :value="recvMsg" style="width: 100%;height: 300px;"
|
||||||
|
:class="{'recvMsgError':recvMsgError}">
|
||||||
|
|
||||||
|
</textarea>
|
||||||
|
</label>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div style="display: flex;flex-direction: column">
|
||||||
|
<label>
|
||||||
|
<textarea v-model="sendCode" class="sendCode"></textarea>
|
||||||
|
</label>
|
||||||
|
<div style="display: flex;flex-direction: row-reverse;">
|
||||||
|
<button @click="onRunCmd">发送代码</button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<script src="./index.js"></script>
|
||||||
|
</body>
|
||||||
|
</html>
|
56
electron-app/index.js
Normal file
56
electron-app/index.js
Normal file
@ -0,0 +1,56 @@
|
|||||||
|
const WS = require("ws");
|
||||||
|
let Server = null;
|
||||||
|
new Vue({
|
||||||
|
el: "#app",
|
||||||
|
data: {
|
||||||
|
status: "---",
|
||||||
|
recvMsg: "",
|
||||||
|
recvMsgError: false,
|
||||||
|
sendCode: "console.log('hello')",
|
||||||
|
webSocketInstance: null,
|
||||||
|
},
|
||||||
|
created() {
|
||||||
|
Server = new WS.Server({port: 1109});
|
||||||
|
Server.on("connection", (webSocket) => {
|
||||||
|
this.status = "link";
|
||||||
|
this.webSocketInstance = webSocket;
|
||||||
|
webSocket.on("message", (msg) => {
|
||||||
|
const {error, data} = JSON.parse(msg);
|
||||||
|
this.recvMsgError = !!error;
|
||||||
|
if (data) {
|
||||||
|
this.recvMsg = data;
|
||||||
|
} else {
|
||||||
|
this.recvMsg = null;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
webSocket.on("close", () => {
|
||||||
|
console.log("close");
|
||||||
|
this.status = "close";
|
||||||
|
this.webSocketInstance = null;
|
||||||
|
});
|
||||||
|
webSocket.on("open", () => {
|
||||||
|
console.log("open");
|
||||||
|
this.status = "open";
|
||||||
|
});
|
||||||
|
webSocket.on("error", () => {
|
||||||
|
console.log("error");
|
||||||
|
this.status = "error";
|
||||||
|
this.webSocketInstance = null;
|
||||||
|
});
|
||||||
|
});
|
||||||
|
},
|
||||||
|
mounted() {
|
||||||
|
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
onRunCmd() {
|
||||||
|
if (this.webSocketInstance) {
|
||||||
|
let str = {
|
||||||
|
code: this.sendCode,
|
||||||
|
};
|
||||||
|
this.webSocketInstance.send(JSON.stringify(str));
|
||||||
|
}
|
||||||
|
},
|
||||||
|
}
|
||||||
|
|
||||||
|
});
|
11944
electron-app/lib/vue.js
Normal file
11944
electron-app/lib/vue.js
Normal file
File diff suppressed because it is too large
Load Diff
21
electron-app/main.js
Normal file
21
electron-app/main.js
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
const Path = require("path");
|
||||||
|
const {BrowserWindow, app} = require("electron");
|
||||||
|
app.on("ready", () => {
|
||||||
|
const win = new BrowserWindow({
|
||||||
|
width: 1200,
|
||||||
|
height: 800,
|
||||||
|
webPreferences: {
|
||||||
|
nodeIntegration: true,
|
||||||
|
nodeIntegrationInSubFrames: true,
|
||||||
|
nodeIntegrationInWorker: true,
|
||||||
|
webSecurity: true,
|
||||||
|
contextIsolation: false,
|
||||||
|
}
|
||||||
|
});
|
||||||
|
win.webContents.openDevTools({mode: "right"});
|
||||||
|
win.loadFile(Path.join(__dirname, "index.html"));
|
||||||
|
win.show();
|
||||||
|
});
|
||||||
|
app.on("window-all-closed", () => {
|
||||||
|
app.quit();
|
||||||
|
});
|
16
electron-app/package.json
Normal file
16
electron-app/package.json
Normal file
@ -0,0 +1,16 @@
|
|||||||
|
{
|
||||||
|
"name": "electron",
|
||||||
|
"version": "1.0.0",
|
||||||
|
"description": "",
|
||||||
|
"main": "main.js",
|
||||||
|
"scripts": {
|
||||||
|
"test": "electron ./"
|
||||||
|
},
|
||||||
|
"author": "",
|
||||||
|
"license": "ISC",
|
||||||
|
"dependencies": {
|
||||||
|
"axios": "^0.24.0",
|
||||||
|
"electron": "14.0.0",
|
||||||
|
"ws": "^8.2.3"
|
||||||
|
}
|
||||||
|
}
|
32
electron-app/test/cmd.js
Normal file
32
electron-app/test/cmd.js
Normal file
@ -0,0 +1,32 @@
|
|||||||
|
// 游戏的inspect脚本
|
||||||
|
const host = "192.168.1.5";//"localhost";
|
||||||
|
const port = 1109;
|
||||||
|
let url = `ws://${host}:${port}`;
|
||||||
|
const ws = new WebSocket(url);
|
||||||
|
ws.onopen = () => {
|
||||||
|
console.log("成功链接调试服务器", url);
|
||||||
|
};
|
||||||
|
ws.onmessage = (event) => {
|
||||||
|
console.log("收到消息", event);
|
||||||
|
const {code} = JSON.parse(event.data);
|
||||||
|
if (code) {
|
||||||
|
let ret = null;
|
||||||
|
let error = false;
|
||||||
|
try {
|
||||||
|
ret = eval(`${code}`);
|
||||||
|
} catch (e) {
|
||||||
|
error = true;
|
||||||
|
ret = e.toString();
|
||||||
|
}
|
||||||
|
ws.send(JSON.stringify({
|
||||||
|
error,
|
||||||
|
data: ret,
|
||||||
|
}));
|
||||||
|
}
|
||||||
|
};
|
||||||
|
ws.onerror = () => {
|
||||||
|
console.log("error");
|
||||||
|
};
|
||||||
|
ws.onclose = () => {
|
||||||
|
console.log("close");
|
||||||
|
};
|
11
electron-app/test/index.html
Normal file
11
electron-app/test/index.html
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang="en">
|
||||||
|
<head>
|
||||||
|
<meta charset="UTF-8">
|
||||||
|
<title>Title</title>
|
||||||
|
<script src="cmd.js"></script>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
|
||||||
|
</body>
|
||||||
|
</html>
|
Loading…
x
Reference in New Issue
Block a user