【发布时间】:2020-07-08 11:23:47
【问题描述】:
TL;DR: 如何将数据从客户端 javascript 发送到服务器端 javascript 文件(node.js 或其他),在那里接收(并用它做一些事情),然后将其发送回客户端 javascript 文件以供进一步使用?
问题的完整描述
有一个带有表单的 HTML 页面,myjavascript.js 从中收集用户输入并在客户端处理它(使用 FormData)。然后myjavascript.js 以这种方式将处理后的输入发送到myphp.php(服务器端):
myjavascript.js:
ajax = new XMLHttpRequest();
ajax.open("POST", "../../myphp.php",false);
ajax.send(formdata);
return ajax.responseText;
数据(formdata)然后被myphp.php接收,经过一些进一步的处理,然后被发送回myjavascript.js:..
myphp.php:
$fieldOne = $_POST["fieldOne"];
$fieldTwo = $_POST["fieldTwo"];
...
($fieldOne, $fieldTwo etc. are processed, and the result is assigned to $results)
...
echo json_encode($results);
exit();
...它由 return ajax.responseText; 返回(如上面的myjavascript.js 代码)。然后将这些数据显示在 HTML 页面等上。
问题
我以前也这样做过。现在我想使用服务器端 javascript(比如myserver.js)而不是myphp.php。我在myserver.js 中有处理数据的代码,我只是不明白如何从myjavascript.js 接收数据并将响应发回。有没有可能,如果有,它的代码应该是什么样子?一般来说,我不太明白在服务器端 javascript 中接收 POST 数据(并发送回响应)的机制与 PHP 的机制有何不同。感谢您的任何建议和cmets。
【问题讨论】:
-
“在服务器端 javascript 中接收 POST 数据(并发送回响应)的机制与 PHP 不同”——它通常不会除了放置东西的名称之外,但是具体情况取决于您用于编写服务器端 JS 的库。例如Express 与 Classic ASP 非常不同。
标签: javascript node.js ajax post server