Angular 笔记 二、聊天室(WebSocket、C#)

资料查阅:
将已有的项目添加到github
Angular CLI 安装和使用
Angular CLI 终极指南
https://angular.io/guide/deployment
Angular项目部署。建议 把Techniques (其他技术)都看一下。官网英文版当前(2018/1/20)用的是Angular-cli介绍的,中文翻译用的是System.js。
Token原理以及应用
Token认证机制
token、cookie的区别
Token ,Cookie和Session的区别
Angular 4 Cookie vs Token 认证
什么是 JWT– JSON WEB TOKEN
功能:
1,任何人进入主页都能看到聊天内容。(门外听)
2,如果要发言必须输入昵称,不需要密码。(开门进入)
3,昵称必须有记录在数据库中,如果没有要注册。(登记)
前端:
Angular、BootStrap
后台:
C#、MVC(Web API?)、EntityFramework
使用Token机制 ?: 前端把account 提交到服务端的登录api,服务端验证正确后(数据库有Account),生成一个token,并把Account表中记下userid的Token,然后把token返回给前端,前端将Token存放在Cookie中。前端每次的请求头中带token(Cookie),这是token 机制? no no no!。Cookie存储Token是存储机制,参阅以上资料,这仍是Cookie机制,通过Cookie传Tokenxxx,Token机制是只传Token和其他参数就行,Cookie有跨域访问限制,Token应不受跨域的限制。可用web http请求通过可自定Header方式传递Token。
  1. 用 ng generate命令生成是报错:Error: ELOOP: too many symbolic links encountered
    应为用的cnpm install 的package,删掉node_modules,用 npm install重新安装。
  2. 跨域:Angular 笔记 三、 跨域请求、自定义Header、预检验(option)总结

http不适用于即时消息聊天室的应用
因为Web是浏览器发送请求,然后服务器再返回。如果浏览器不发送请求,服务器就没法通知客户端。比如,聊天室。一个发送了消息,发送到服务器,但其他的浏览器没有请求,如此服务器就不能把这条消息推送到其他浏览器,便出现了消息不同步的问题。而WebSocket就是为了解决这一问题。WebSocket 本质上跟 HTTP 完全不一样,只不过为了兼容性,WebSocket 的握手是以 HTTP 的形式发起的。WebSocket实现了双向的通信,使得服务器可以主动把消息推送到浏览器。这便是实时推送。
实现:聊天室
项目:前端后台

1. MVC项目中搭建WebSocket服务器
2. asp.net mvc 实现简单的实时消息推送
2. Building a Real-time Chat App with Angular 2 and deepstream
3. Building Chat Application using MEAN Stack (Angular 4) and Socket.io
4. Real Time Apps with TypeScript: Integrating Web Sockets, Node & Angular
5. Websocket:HTML5 WebSocket

参考设计:
1. 这里写图片描述
2. Websocket协议原理与实现(一)
3. Websocket协议原理与实现(二)
4. Writing WebSocket servers
5. Writing WebSocket client applications

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值