我使用 javascript(和 jquery)将 google api 用于其搜索引擎。但现在我认为它必须在服务器端完成。在客户端使用它可能会将站点的某些关键部分暴露给客户端并使其易受攻击。无论如何我可以移植那个javascript代码,因为它在服务器端。
我使用 php 作为服务器端脚本。
3 回答
您可能希望将您正在使用的任何代码移植到 PHP,或重写它。在 PHP 中执行 JavaScript 没有简单的方法,但大多数情况下,重写代码相当容易。
JavaScript可以在服务器端使用,但这需要大量重新配置服务器,并进入一项全新的技术。这很可能不是您想要的。
您可以尝试使用node.js。它是当今最流行的 JS Web 服务器软件,可以用作 Web 服务器。例子:
一个用 Node 编写的 Web 服务器示例,它对每个请求都响应“Hello World”。
var http = require('http'); http.createServer(function (req, res) { res.writeHead(200, {'Content-Type': 'text/plain'}); res.end('Hello World\n'); }).listen(1337, "127.0.0.1"); console.log('Server running at http://127.0.0.1:1337/');
但这意味着您将拥有两台服务器 - 一台用于 PHP,一台用于 JS 代码。你必须认为它是否值得。
另一方面,如果您可能考虑将整个应用程序重写为 JavaScript(我的意思是 PHP 服务器端部分),那么您可能会发现它更易于维护(服务器端和客户端使用相同的语言)。
有一些 javascript 服务器端解决方案,但解决此问题的典型方法是使用 AJAX 调用的 Web 服务。大多数 javascript 库都包含一种执行 AJAX 的方法,您应该可以毫无问题地找到示例。
如果您的目标是通过在服务器上使用 javascript 来节省时间,那么您会大吃一惊——学习如何使用任何服务器端技术将花费您更长的时间。
坚持调用 php web 服务是我的建议。
如果您必须在服务器上使用 javascript,您应该使用节点——但正如 WTP 指出的那样,这不是 Web 服务器本身——您仍然必须将该代码作为与您的站点代码分开的 Web 服务来调用。