如何处理来自服务器(节点 js)中表单的数据? [复制]
Posted
技术标签:
【中文标题】如何处理来自服务器(节点 js)中表单的数据? [复制]【英文标题】:How do I process the data from a form in a server (node js)? [duplicate] 【发布时间】:2016-09-21 00:27:38 【问题描述】:我有一个网站,其中有一个允许用户登录的部分。 一旦用户输入了他们的详细信息并单击“登录”,我将如何从服务器请求中获取该信息以进行处理?我知道“get”方法,但是,每当我使用它时,表单中的所有值都会显示在 URL 中(包括密码)。
这是处理请求的服务器文件中的函数
function handle(request, response)
var url = request.url;
url = removeQuery(url);
url = lower(url);
url = addIndex(url);
var querystring = require('querystring');
var params = querystring.parse(require('url').parse(request.url).query);
if (! valid(url)) return fail(response, NotFound, "Invalid URL");
if (! safe(url)) return fail(response, NotFound, "Unsafe URL");
if (! open(url)) return fail(response, NotFound, "URL has been banned");
var type = findType(url);
if (type == null) return fail(response, BadType, "File type unsupported");
if (type == "text/html") type = negotiate(request.headers.accept);
reply(response, url, type);
基本上,我如何才能从表单中获取信息而不在 URL 中显示?
【问题讨论】:
浏览器必须发出 POST 请求。request
应该有一个方法来获取您可以解析的请求的 body。
谢谢。我将使用什么方法来获取请求的正文?
【参考方案1】:
第一站:将<form action="..." ...
更改为<form method="POST" action="..." ...
,这样浏览器就会在POST 中发送表单数据。
接下来,request.body
包含您要查找的信息,虽然它不是字符串,而是流,因此有点难以查看。将 express 视为一个更高级别的工具,可以为您解析这些内容。
【讨论】:
谢谢。我会看看快递。我已经看到提到的“发布”方法,但是我不完全理解如何提取我想要的信息 查看 F12 开发人员工具(例如在浏览器中按 F12)以查看浏览器发送的请求/响应。如果您使用的是 Windows,Fiddler 也是一个很好的查看工具。以上是关于如何处理来自服务器(节点 js)中表单的数据? [复制]的主要内容,如果未能解决你的问题,请参考以下文章
GatsbyJs - 如何处理来自 Contentful 插件的空 graphql 节点