技术控

    今日:136| 主题:49228
收藏本版 (1)
最新软件应用技术尽在掌握

[其他] JavaScript笔记六-Web开发

[复制链接]
时好时坏的温柔 发表于 2016-10-1 14:38:09
114 0

立即注册CoLaBug.com会员,免费获得投稿人的专业资料,享用更多功能,玩转个人品牌!

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
       
  • CS:软件运行在桌面上,数据库运行在服务器   
  • BS:软件运行在浏览器上,逻辑和数据都存储在服务器端  
  koa  

  基于Promise并配合async来实现异步.
  1. // 导入koa,和koa 1.x不同,在koa2中,我们导入的是一个class,因此用大写的Koa表示:
  2. const Koa = require('koa');
  3. // 创建一个Koa对象表示web app本身:
  4. const app = new Koa();
  5. // 对于任何请求,app将调用该异步函数处理请求:
  6. app.use(async (ctx, next) => {
  7. await next();
  8. ctx.response.type = 'text/html';
  9. ctx.response.body = '<h1>Hello, koa2!</h1>';
  10. });
  11. // 在端口3000监听:
  12. app.listen(3000);
  13. console.log('app started at port 3000...');
复制代码
koa middleware 中间间  

  每收到一个http请求,koa就会调用通过app.use()注册的async函数,并传入ctx和next参数,就可以操作ctx参数设置返回内容
  Babel 代码转换器  

  用来将高版本的代码转换成低版本的代码,并保持逻辑不变
  
       
  • 编写一个start.js文件,在这个文件中先执行      babel-core/register,再加载app.js  
  1. var register = require('babel-core/register');
  2. register({
  3. presets: ['stage-3']
  4. });
  5. require('./app.js');
复制代码
koa-router URL映射  

  1. router.get('/',async(ctx,next)=>{
  2. ctx.response.body = '<h1>Index</h1>';
  3. });
  4. //最后要将映射绑定到koa上
  5. app.use(router.routes());
复制代码
模板引擎  

  
       
  • 主要用来输出页面   
  • 转义      
    对特殊字符进行转义,避免受到XSS攻击   
  • 格式化      
    对不同变量类型进行格式化   
  • 简单逻辑      
    按条件输出内容  
  mysql数据库  

  
       
  • 安装  
  1. ~ sudo apt-get install mysql-server
复制代码

       
  • 检查MySql服务器系统进程  
  1. ps -aux|grep mysql
复制代码

       
  • 登陆MySql  
  1. mysql -uroot -p
复制代码

       
  • 修改编码为utf-8 配置文件默认存放在/etc/my.cnf或者/etc/mysql/my.cnf  
  1. [client]
  2. default-character-set = utf8
  3. [mysqld]
  4. default-storage-engine = INNODB
  5. character-set-server = utf8
  6. collation-server = utf8_general_ci
复制代码

       
  • 查看所有数据库  
  1. mysql> show databases;
复制代码

       
  • 退出mysql  
  1. exit
复制代码
Sequelize 操作数据库  

  ORM,把关系数据库的表结构映射到对象上
      Code;  
  WebSocket  

    在浏览器和服务器之间建立一个不受限的双向通道,服务器可以在任何时候发送消息给浏览器
    格式
   
  1. GET ws://localhost:3000/ws/chat HTTP/1.1
  2. Host: localhost
  3. Upgrade: websocket
  4. Connection: Upgrade
  5. Origin: http://localhost:3000
  6. Sec-WebSocket-Key: client-random-string
  7. Sec-WebSocket-Version: 13
复制代码
和普通请求的区别:
  
       
  • GET请求的地址不是类似      /path/,而是以      ws://开头的地址;   
  • 请求头U      pgrade: websocket和      Connection: Upgrade表示这个连接将要被转换为WebSocket连接;   
  •       Sec-WebSocket-Key是用于标识这个连接,并非用于加密数据;   
  •       Sec-WebSocket-Version指定了WebSocket的协议版本。  
  服务器响应
  1. var register = require('babel-core/register');
  2. register({
  3. presets: ['stage-3']
  4. });
  5. require('./app.js');
  6. 0
复制代码
101表示本次连接的HTTP协议即将被更改,更改后的协议就是    Upgrade: websocket指定的WebSocket协议。  
  使用ws  

  在Node.js中,使用最广泛的WebSocket模块是ws
  需要在package.json中添加ws的依赖  
  1. var register = require('babel-core/register');
  2. register({
  3. presets: ['stage-3']
  4. });
  5. require('./app.js');
  6. 1
复制代码
     Code;
友荐云推荐




上一篇:Gulp折腾之路(III)
下一篇:Zsh vs Bash
酷辣虫提示酷辣虫禁止发表任何与中华人民共和国法律有抵触的内容!所有内容由用户发布,并不代表酷辣虫的观点,酷辣虫无法对用户发布内容真实性提供任何的保证,请自行验证并承担风险与后果。如您有版权、违规等问题,请通过"联系我们"或"违规举报"告知我们处理。

*滑动验证:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

我要投稿

推荐阅读

扫码访问 @iTTTTT瑞翔 的微博
回页顶回复上一篇下一篇回列表手机版
手机版/CoLaBug.com ( 粤ICP备05003221号 | 文网文[2010]257号 )|网站地图 酷辣虫

© 2001-2016 Comsenz Inc. Design: Dean. DiscuzFans.

返回顶部 返回列表