Javascript 从HTML应用程序通过TCP IP客户端发送短字符串的最佳方式
我正在做一个项目,我必须通过TCP IP套接字发送不同的字符串(开始、暂停、停止),以便通知服务器 我想做的是通过按下HTML应用程序上的按钮来发送字符串(开始、停止、暂停)。 ***按下JSON文件上的按钮后,我将fs.writeFile一个空字符串。我的JSON文件中只需要一个字符串 我尝试直接从客户端(clientSend.write('TEST');)发送一些自定义字符串,服务器可以很好地接收它们 我尝试通过php发送不同的变量,然后是JSON文件,但似乎无法访问JSON文件,即使在服务器运行时也是如此。我想知道什么是从html页面向将发送字符串的客户端发送单个字符串单词的最佳方式 我试图发送到一个php文件,然后再发送回一个JSON文件,但从未让它工作 节点JS客户端:Javascript 从HTML应用程序通过TCP IP客户端发送短字符串的最佳方式,javascript,html,node.js,json,Javascript,Html,Node.js,Json,我正在做一个项目,我必须通过TCP IP套接字发送不同的字符串(开始、暂停、停止),以便通知服务器 我想做的是通过按下HTML应用程序上的按钮来发送字符串(开始、停止、暂停)。 ***按下JSON文件上的按钮后,我将fs.writeFile一个空字符串。我的JSON文件中只需要一个字符串 我尝试直接从客户端(clientSend.write('TEST');)发送一些自定义字符串,服务器可以很好地接收它们 我尝试通过php发送不同的变量,然后是JSON文件,但似乎无法访问JSON文件,即使在服务
const IP = '127.0.0.1';
const SENDPORT = 3456;
setInterval(function() {
var clientSend = new net.Socket();
clientSend.connect(SENDPORT, IP, function() {
console.log('Connected');
fs.readFile('/string.json', (err, data) => { //might be wrong
if (err) throw err;
console.log(data);
});
clientSend.write(data);
clientSend.destroy();
});
clientSend.on('close', function() {
console.log('Connection closed');
clientSend.destroy();
});
}, 10000);
(...)
Start button:<button id="buttonStart"; style="background:green;
cursor:pointer;width:300px;height:100px;">Start</button>
<br><br><br>>
Pause button:<button id="buttonStart"; style="background:orange;
cursor:pointer;width:300px;height:100px;">Pause</button>
<br><br><br>>
Stop button:<button id="buttonStart"; style="background:red;
cursor:pointer;width:300px;height:100px;">Stop</button>
<script
src=https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js>
</script>
<script>
var start = 'start';
//This is where I have no clue what to do
$('#buttonStart').click(function() {
$.post("json.php", {JSON.stringify(start)}
);}
</script>
HTML页面:
const IP = '127.0.0.1';
const SENDPORT = 3456;
setInterval(function() {
var clientSend = new net.Socket();
clientSend.connect(SENDPORT, IP, function() {
console.log('Connected');
fs.readFile('/string.json', (err, data) => { //might be wrong
if (err) throw err;
console.log(data);
});
clientSend.write(data);
clientSend.destroy();
});
clientSend.on('close', function() {
console.log('Connection closed');
clientSend.destroy();
});
}, 10000);
(...)
Start button:<button id="buttonStart"; style="background:green;
cursor:pointer;width:300px;height:100px;">Start</button>
<br><br><br>>
Pause button:<button id="buttonStart"; style="background:orange;
cursor:pointer;width:300px;height:100px;">Pause</button>
<br><br><br>>
Stop button:<button id="buttonStart"; style="background:red;
cursor:pointer;width:300px;height:100px;">Stop</button>
<script
src=https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js>
</script>
<script>
var start = 'start';
//This is where I have no clue what to do
$('#buttonStart').click(function() {
$.post("json.php", {JSON.stringify(start)}
);}
</script>
(…)
开始按钮:开始
>
暂停按钮:暂停
>
停止按钮:停止
var start='start';
//这就是我不知道该做什么的地方
$(“#按钮开始”)。单击(函数(){
$.post(“json.php”,{json.stringify(start)}
);}
PHP
<?php
$json = $_POST['start'];
/* sanity check */
if (json_decode($start) != null) {
$file = fopen('/string.json','w+');
fwrite($file, $start);
fclose($file);
}
else {
//
}
?>
现在我真正想得到的是JSON文件中的数据。它也可以是一个.txt文件,也可以是任何其他我以后可以使用fs.readfile的文件
我不能在HTML页面上使用任何NodeJS函数
性能也很重要。如果有更好的选择来发布和阅读小字符串,请告诉我
谢谢。我编写的解决方案很好,但并不完整。我只是没有在php服务器上运行php代码,所以html页面读取的是简单的文本
我下载了Wampserver并使php在此服务器上运行,然后将所有内容一起运行,效果非常好。我编写的解决方案很好,但并不完整。我只是没有在php服务器上运行php代码,所以html页面读取的是简单的文本 我下载了Wampserver,让php在这台服务器上运行,然后把所有的东西一起运行,它运行得很好