本实例主要涉及红框圈出的文件:

文件描述:

www 里面存放静态文件
a.html是我们的表单文件
ajax.js是封装的一个ajax
server2.js是建立的服务端文件


代码简述:

server2.js

const express = require('express')
const expressStatic = require('express-static') //用于改变静态资源路径var server = express()
server.listen(8087) //监听到8087端口//用户数据(后面会使用数据库代替)
var users = {blue: '1234',zhangsan: '654321',lisi: '987987',mayouchen: '1234',
}console.log('开始运行数据~')
//请求方式 get post。use通用兼容get post的请求~
server.get('/login', function (req, res) {var user = req.query['user']var pass = req.query['pass']if (users[user] == null) {res.send({ ok: false, msg: '此用户不存在' })} else {if (users[user] != pass) {res.send({ ok: false, msg: '密码错了' })} else {res.send({ ok: true, msg: '成功' })}}
})server.use(expressStatic('./www'))

a.html

<!DOCTYPE html>
<html><head><meta charset="utf-8"><title></title><script src="ajax.js" charset="utf-8"></script><script type="text/javascript">window.onload = function () {var oUser = document.getElementById('user');var oPass = document.getElementById('pass');var oBtn = document.getElementById('btn1');oBtn.onclick = function () {ajax({url: '/login',data: { user: oUser.value, pass: oPass.value },success: function (str) {var json = eval('(' + str + ')');if (json.ok) {alert('登录成功');} else {alert('失败:' + json.msg);}},error: function () {alert('通信失败');}});};};</script>
</head><body>用户:<input type="text" id="user" /><br>密码:<input type="password" id="pass" /><br><input type="button" value="登录" id="btn1" />
</body></html>

ajax.js

function json2url(json) {var arr = []for (var name in json) {arr.push(name + '=' + json[name])}return arr.join('&')
}
function ajax(json) {json = json || {}if (!json.url) returnjson.data = json.data || {}json.type = json.type || 'get'var timer = nullif (window.XMLHttpRequest) {var oAjax = new XMLHttpRequest()} else {var oAjax = new ActiveXObject('Microsoft.XMLHTTP')}switch (json.type) {case 'get':oAjax.open('GET', json.url + '?' + json2url(json.data), true)oAjax.send()breakcase 'post':oAjax.open('POST', json.url, true)oAjax.setRequestHeader('Content-Type','application/x-www-form-urlencoded')oAjax.send(json2url(json.data))break}oAjax.onreadystatechange = function () {if (oAjax.readyState == 4) {clearTimeout(timer)if ((oAjax.status >= 200 && oAjax.status < 300) || oAjax.status == 304) {json.success && json.success(oAjax.responseText)} else {json.error && json.error(oAjax.status)}}}
}

express登录例子相关推荐

  1. mvc登录实例 mysql_spring mvc + mybatis + mysql 调整的一个简单的登录例子

    spring mvc + mybatis + mysql 整合的一个简单的登录例子 今天用spring跟mybatis整合写了一个简单的登录例子,第一次整合,给自己做个笔记,可能注释写的有点少,做的不 ...

  2. html写界面,C++|Qt后台处理业务(后台登录例子JavaScript给Qt提供数据)

    目录 背景 演示及源码 背景 因为前些日子,去了XX培训,看到某公司写的软件,简直惊艳无比,如果使用Qt传统的widgets来写,辣么,将会是无比的复杂. 如果使用qml去写,难道稍微降低了一点点,但 ...

  3. spring异常处理实例(登录例子)

    给出一个spring异常处理的简单例子:  spring配置文件Config.xml <?xml version="1.0" encoding="UTF-8&quo ...

  4. 我的node+express小例子

    启动index.js: var express = require("express"); var path = require("path"); var op ...

  5. php p3p跨域登录,php+ajax实现多域名跨域登录例子(基于P3P)

    在以前如果我们要实现php+ajax实现多域名跨域登录的话很多朋友都碰到无法正常跨域登录问题,下面我来给大家解决跨域名登录问题,有需要的参考. 该同步登陆需求需满足以下三个关键点: 1)A域名下登陆的 ...

  6. PHP笔记-用户登录例子

    程序运行截图如下: 输入用户名密码后,点击登录后: 文件如下: index.php <?php@session_start();if(!isset($_SESSION["user&qu ...

  7. Appcan与后台数据交互,登录例子

    1.appcan界面(login.html) 假定后台路径为:http://localhost:8080/LabManageSystem/appcan/login/loginHandle.jsp,其中 ...

  8. Struts——例子

    软件152 刘金红 一.下载Struts 建立web项目,给项目添加外部引用包(project-properties-Java Build Path-Add External Jars...).添加的 ...

  9. Drools与Spring集成 登录测试

    http://justsee.iteye.com/blog/1279082 Drools5.2.0.Final与Spring3集成测试 在drools5.2,有一个jar包:drools-spring ...

最新文章

  1. mysql没有err文件_xampp中的mysql启动时无法产生err文件
  2. Codeforces Gym 101630J Journey from Petersburg to Moscow (最短路)
  3. 主键和索引哪个快_数据库两大神器【索引和锁】
  4. C++ 高级数据类型(四)—— 动态内存分配
  5. python 中split函数的应用_举例详解Python中的split()函数的使用方法
  6. Dubbo源码分析:ThreadPool
  7. Google 推出免费利器,让编程小白也能开发游戏
  8. 十进制转换为16进制
  9. python multiprocessing遇到Can’t pickle instancemethod问题
  10. 解决局域网访问共享工具
  11. 图片、图标、代码资源网站
  12. html设置等宽字体效果
  13. [UPF]Synopsys推荐的UPF流程及Power Domain简介
  14. win7纯净版系统哪里下载好
  15. 阿里云域名转入/转出操作教程
  16. uni ios视频黑屏、无声音或无法播放
  17. 戴尔r720服务器装爱快路由系统,笔记本虚拟机里安装爱快软路由做单臂路由
  18. 电子工程师是怎样的成长之路?
  19. 跳转到app下载页面和app评论页面
  20. freeswitch配置软电话

热门文章

  1. 深夜学算法之SkipList:让链表飞
  2. 机器学习实战:使用lightGBM预测饭店流量
  3. window环境变量
  4. 《iOS应用软件设计之道》—— 2.11 小结
  5. Android 蹲坑的疑难杂症集锦一
  6. Https环境下WS接口两次连续调用出错
  7. Cracking Wifi Wpa-Wpa2 in 5 second——Dumpper V.80.8 +JumpStart+WinPcap
  8. windows phone开发第一步:搭建软件开发环境
  9. Linux下搭建lamp论坛(phpwind+wordpress+discus)
  10. EF三种编程方式详细图文教程(C#+EF)之Database First