如何在Node下使用HTTP提供命令行参数

时间:2013-07-02 17:55:22

标签: node.js http command-line-arguments

是否可以在Node.js下使用HTTP传递命令行参数?这似乎是一件简单的事情,但我似乎无法找出它是如何或甚至是可能的。我对节点的异步性质有点挣扎,所以可能会遗漏一些基本的东西!

谢谢, 将

1 个答案:

答案 0 :(得分:0)

您可以选择如何将状态信息从一个脚本传递到另一个脚本。最简单和最便携的一个从一开始就存在 - 当你从page1发布用户数据时,将它发送到page2的隐藏表单元素。然后,page2的帖子将在新表单元素上具有用户输入,并且也自动包括隐藏表单元素值。当然,您可以使用page1帖子中的数据来确定第2页上的内容。依此类推至第3页等。

另一个常见的选择是cookies。当用户浏览器查看page1时,会在用户的浏览器上留下cookie,然后在第2页的代码中查询浏览器。这在现代浏览器中完全可移植,但用户可以关闭cookie然后它将无法工作。

另一个选项是node.js脚本中的会话变量。这些很容易使用,但有些服务器在幕后使用cookie,它们可能会关闭。你可能想要阅读那篇文章。

这三个中没有一个要求在Ajax选项所需的浏览器上使用JavaScript。在这种单页模式下,您可以在JavaScript代码中保留所需的所有状态信息,因为页面永远不会重新加载。这对于初学者来说有点困难,而且Javascript也有可能关闭。如果您正在开发一个丰富的交互式应用程序,您可以期望您的用户启用JS。但对于一个有几页网页的网站来说,它可能并不总是在上面。

所以,我建议你尝试隐藏的表单元素来开始。类似的东西:

<input type="hidden" name="whatever" value="data-from-page1-post" />

如果你把它放在第2页的表格中,它会回到帖子中。

玩得开心......