(一)js+html创建表单,连接

一、Node服务

https://segmentfault.com/a/1190000019768393?utm_source=tag-newest

二、表单创建

我们创建一个简单的html文件【InputForm.html】,用于应答完成后的页面显示,页面中包含一个列表框,一个数字框,一个“提交”按钮。

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>输入表单</title>

</head>
<body>
    <form action="http://172.21.12.62:3002/InputForm.html" method="get">
        请输入文本<input type="text" name="TextData"/><br>
        请输入数字<input type="number" name="NumberData"/><br>
        <input type="submit" value="提交"/>
    </form>
</body>
</html>

三、开启服务

创建一个js文件【httpserver.js】,先导入几个我们在运行过程中用到的包

let http=require('http');
let url=require('url');
let fs=require('fs');

创建一个server函数进行服务器的应答,需要接收传入的url,通过传入的url进行输出测试。例如当url为“/image”,我们显示一张自己准备好的图像,如果表单获取错误则报错,获取成功则输出相关信息。

在监听中输入自己定下的端口号和自己的IP地址

let condb=require('./mongoTest');
let http=require('http');
let url=require('url');
let fs=require('fs');
let sever=http.createServer(function(req,res){
    if(req.url==='/favicon.ico'){res.end('')}
    else if(req.url==='/'){
        res.writeHead(200,{'Content-Type':'text/html'});
        fs.readFile('./InputForm.html',function(err,FileData){
            if(err){
                console.log("Can not find such file");
                throw err;
            }
            res.write(FileData);
            res.write('<br>'+'<br>');
            res.end('File send Success');
            //console.log('1')
        });
        //console.log('2');
    }
    else if(req.url==='/image'){
        res.writeHead(200,{'Content-Type':'image/jpg'});
        fs.readFile('./Zelda.jpg',function(err,Image){
            if(err){
                console.log("Can not find such image");
                throw err;
            }
            res.write(Image);
            res.write('<br>'+'<br>');
            res.end('Image send Success');
        });
    }

});
sever.listen(端口,'IP');

 表单的输出如下,我们需要获取表单中的文本内容和数字内容,进行类型转换后在新页面输出

    else{
        res.writeHead(200,{'Content-Type':'text/html'});
        console.log(req.url);
        let urlPathName=url.parse(req.url).path;   //装载字符串
        console.log('urlPath= '+urlPathName);
        let urlQuery=url.parse(req.url,true).query; //true:由字符串变成对象
        //输出text
        let T=urlQuery.TextData;
        console.log('Text= '+T);
        res.write('text= '+T+'<br>');
        //输出数字
        let N=urlQuery.NumberData;
        console.log('Number= '+N);
        res.write('number= '+N+'<br>');
        res.end('<br>See you next time~');
    }
 

四、测试输出

先运行httpserver.js文件,然后打开html,在表单中输入内容

提交表单,如果正常输出则运行成功

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值