我之前写过一篇博客,主要是基于TCP协议实现的聊天室swing版,在此再写一个基于TCP协议实现的聊天室控制台版,便于学习和比较. package 聊天室console版.utils; import java.net.InetAddress; import java.net.UnknownHostException; /** * 工具类,服务器端的有关信息 * @author 李章勇 * */ public abstract class HostInfo { //访问权限,供不同包访问 publ…
引子: 当前,互联网 体系结构的参考模型主要有两种,一种是OSI参考模型,另一种是TCP/IP参考模型. 一.OSI参考模型,即开放式通信系统互联参考模型(OSI/RM,Open Systems Interconnection Reference Model),是国际标准化组织(ISO)提出的一个试图使各种计算机在世界范围内互连为网络的标准框架,简称OSI. OSI参考模型将实现网络互连的通信协议分为7层,自上而下分别是: 第7层应用层:OSI中的最高层,为用户提供各项互联网应用,如公司老板通过…
Facebook新框架React Native,一套搞定App开发 本文来自微信公众号“给产品经理讲技术”(pm_teacher),欢迎关注. 做为一名产品经理,你是否遇到过这样的窘境,“帮我把字体调成 16 号呗,颜色变成 #FFFF00FF,老大说这里最好改一下”,作为一名 app 的开发只能无奈但心里窃喜的告诉你,“只能等下个版本了,必须要重新发布才能改”,如果你问为什么不能改了就生效啊,那说明你对技术的理解要么真的很差,要么你就是知道这项 React-Native 新技术所爆发出来的力量…
一.前言 9月,又到开学的季节.为每个一直默默努力的自己点赞!最近都沉浸在react native原生app开发中,之前也有使用vue/react/angular等技术开发过聊天室项目,另外还使用RN技术做了个自定义模态弹窗rnPop组件. 一.项目简述 基于react+react-native+react-navigation+react-redux+react-native-swiper+rnPop等技术开发的仿微信原生App界面聊天室——RN_ChatRoom,实现了原生app启动页.As…
/* * 思路:在登录成功时将用户的id存进在线用户列表中的key value中链接的ws为空,并保存用户的信息. * 当跳转到聊天室时,将用户和聊天室链接的ws存进在线用户列表中的 * 问题:如何在聊天室的页面时,获取到用户的id.可尝试在登录时存入cookie,当在聊天室页面时可以通过id来获取信息,并把当前的链接的ws存入key为用户id的ws中.若没有则代表改用户没有经过登录页面登录. * */ package handler import( "log" "net/h…
这是本人从其他地方学习到的关于聊天室的一个模本,我从中截取了一部分关于客户端和服务端通信的Socket的内容.希望对大家对socket有个了解,我写的这些代码可以实现两人或多人在多台电脑上实现简单的对话.在运行时要先运行server(服务端),再运行client(客户端).Windows获取自己电脑的ip需要再DOS(命令窗口)界面输入ipconfig或者再网络和共享中心已连接的网络查看详细信息.具体的代码如下 ##客户端代码 package talkRoom; import java.io.B…
1  安装 socket.io模块 npm install "socket.io": "latest" 2 app.js相关 ws = require('socket.io'); //依赖该模块 let server = http.createServer(app).listen(300); //将服务器赋值给变量 let io = ws(server); io.on('connection', function (socket) { //服务器监听'connect…
最近有点空闲时间,顺手研究下react-native,2013年的时候在老师的指导下使用jQuery Mobile做过手机应用,那个运行速度慢呀!让我对WebApp和PhoneGap这一类的跨平台App没有信心,毕业之后由于长时间做原生开发也就没有再去关注这些东西,最近一年RN风头一直很强劲,搞得我心痒痒,前段时间工作很忙,最近闲下来就玩玩这个.关于RN,最好的学习网站当然还是RN中文网,但是这里有一些知识点不全,新手照着敲可能也见不到效果,于是我做了一个App,把RN的基础知识点包括一些高级知…
当前rn版本 "react": "16.6.3" "react-native": "0.58.5" 通过react-native-cli初始化项目 npm i -g react-native-cli react-native init <项目名称> 如果mac第一步报错,则需要加sudo. 安装成功以后,先运行一下项目,看是否可以正常运行,之后再进行安装第三方包. 安装一些必要的npm包 react-navigat…
React Native在iOS界早就炒的火热了,随着2015年底Android端推出后,一套代码能运行于双平台上,真正拥有了Hybrid框架的所有优势.再加上Native的优秀性能,让越来越多的公司在实际项目中一探究竟.58同城APP发布模块年代久远,一直计划进行重构以适应日益苛刻的用户体验,这个需求与我们在React Native上一探究竟的意愿一碰撞,就产生了React Native在58APP的开发实践. 本文重点介绍的是实践过程中的技术架构和Native组建层以及热更新平台的基本情况,…