天天看点

nodejs 获取表单字段以post方式将请求发送给某个url遇到服务端返回first argument must be a string or Buffer的错误

今天根据nodejs文档的教学学习获取表单的字段,将字段内容以post方式返回给服务器进行再次显示。结果虽然实现了,但是端口服务却抛出了一个异常,意思说第一个参数类型不对,必须是string或者buffer才行,一下就是一开始的代码。

html文件
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<form method="post" action="http://localhost:3000/">
    <input type="text" name="title" />
    <textarea name="text"></textarea>
    <input type="submit" /></form>
<!--<script src="httpserver.js"></script>-->
</body>
</html>
           
js文件
nodejs 获取表单字段以post方式将请求发送给某个url遇到服务端返回first argument must be a string or Buffer的错误

然后在运行的时候,服务端会抛出如下的异常

nodejs 获取表单字段以post方式将请求发送给某个url遇到服务端返回first argument must be a string or Buffer的错误

一开始蛋疼的,按照文档写也能有错。后来发现还真的有错,因为post里面的两个参数都不是string类型,则需要将其改一下类型即可,即需要修改两行代码即可,如下所示:

res.write(post.title+'')
 res.write(post.text+'');
           

再次测试,大功告成!