基于node的微博的设计与实现


    



    基node微博设计实现
    design and implementation of microblog based on node




    千禧年 Twitter开始进入中国引发代新流行紧接着微博立互动特性快速成新兴众信息交流台
    着微博热潮前传统媒体纯获取信息身份转换信息发布者获取者传统媒体时期民群众动获取信息说微博兴起民发声转折点
    微博系统作新媒体代表然需先进解决思路方案文结合中型企业中广泛技术实际应设计实现基Nodejs微博系统
    毕业设计做微博基础特色功常规发布微博传图片回复微博关注感兴趣户@提醒微博等等
    系统台采koa2框架进行开发数库选择目前中型企业中广关系型数库mysqlsession完成登录前端页面EJS端模板引擎结合CSS外Redis作缓存数库基nodejs微博系统具轻量型易部署特点该系统适合想推出微博网站户进行
    文工作包括:简单介绍微博背景意义微博发展现状相关技术系统进行需求分析根架构设计进行基Nodejs微博系统编码实现测试

    关键词:微博系统 Nodejs koa2 mysql session EJS Redis
    Abstract
    After the millennium Twitter began to enter China triggering a new generation of popularityThen weibo quickly became an emerging public information exchange platform with its immediate interactive characteristics
    With the upsurge of microblog people have changed from the previous status of pure information acquisition by traditional media to that of information publisher and acquirer In the period of traditional media most people can only passively obtain information It can be said that the rise of microblog is a turning point for people to make their voices heard
    As a representative of new media microblog system naturally also needs advanced solutions and solutions In this paper a microblog system based on node js is designed and implemented based on the technologies widely used in today's small and mediumsized enterprises and practical applications
    My graduation project mainly accomplished the basic and characteristic functions of weibo such as regular release of weibo upload pictures reply to weibo follow interested users @others to remind others to read weibo and so on
    In the background of the system koa2 framework is mainly used for development In the database mysql the most widely used relational database in small and mediumsized enterprises is selected Session is used to complete loginThe microblog system based on nodejs is lightweight and easy to deploy The system is suitable for users who want to launch their own microblog website
    The main work of this paper includes briefly introducing the background and significance of weibo the development status of weibo and the related technologies used analyzing the requirements of the system and implementing and testing the nodejs based weibo system according to the architectural design

    Keywords weibo system Nodejs koa2 mysql session EJS Redis
    目录
    第章 绪 3
    11 研究背景意义 3
    111 研究背景 3
    112 研究意义 3
    12 研究现状 4
    第二章 相关技术研究 5
    21 Nodejs简介 5
    22 koa2框架 6
    23 mysql关系型数库 6
    24 session登录技术 7
    25 EJS端模板引擎 7
    26 Redis缓存 7
    第三章 系统需求分析 9
    31行性分析 9
    311 技术行性 9
    312 济行性 9
    312 开发行性 9
    32 功需求分析 10
    33 非功性需求分析 11
    331 性需求分析 11
    332 安全性需求分析 12
    34 业务流程分析 12
    第四章 系统设计 13
    41系统架构设计 13
    42功结构设计 16
    43 系统详细设计 16
    44功设计 18
    45数库设计 25
    451 数库概念设计 25
    452 数库逻辑设计 26
    第五章 系统编码实现 28
    51核心功模块实现 28
    511 注册 28
    512 MD5加密 29
    513 schema格式校验 29
    514 传图片 30
    515 @功 31
    516 加载更 分页 32
    517 预防XSS攻击 32
    518 广场页(redis缓存) 33
    52 系统页面展示 33
    第六章 系统测试 37
    61 安全测试 37
    62 功测试 38
    结 39
    参考文献 40
    致谢 41

    第章 绪
    章通角度分析微博系统背景意义历史媒体演变展示研究现状开启项目绪家够更解微博系统发展意义明确项目研究意义
    11 研究背景意义
    111 研究背景
    数百年前祖祖辈辈通常忙生计少休闲娱乐时间快乐源田者然予点点滴滴获取信息仅仅局限村落
    报纸杂志说发展广播生活中潜移默化产生着巨影响仅娱乐通道更官方舆宣传工具民国时期派团体量创建广播电台利作宣传工具广播事业民国时期客观具定发展[1]优势十分明显劣势容忽略广播容着声音消散空气中遇感兴趣容法跳序收听果语言通收听会变十分困难
    着科技发展电视逐渐走入众视野着动态影声音丰富真实资料运手段高超表现艺术仅够吸引眼球够激发学情绪[2]知觉中已听觉转视觉非常然开始屏幕获取众信息电视信息非重播否播难回顾查询
    千禧年互联网技术蓬勃发展日新月异更新速度微博客时信息传递媒体方式推众报纸者杂志新闻者优惠信息微博样获取通进入空间浏览期信息发布微博信息避免广播者电视时效性问题极方便进行信息回顾查阅传统媒体时期数民群众信息获取者微博兴起现象发生历史性改变户成信息发布者传播者获取者
    112 研究意义
    作超新媒体微博拥传统媒体身没优势:
    1 微博散播消息速度非常迅速
    2 容短精悍方时间立刻心中想写发布微博甚根想法插入图片者@想提醒微博
    3 老孩手快便捷易理解操作方式
    4 时互动传统媒体法互动微博通@迅速通知户者回复象极提高信息传播时性
    5 影响力时超想象条微博时候石沉海量转发会产生超想影响力广泛收社会关注帮助需群进行发声解决许实际问题方便求助门群
    6 交友便利户极简单建立听众群形成爱圈子起收获快乐
    微博系统作新媒体代表然需先进解决思路方案文设计实现基nodejs微博系统实现发布微博发布图片回复微博户间相互关注@关注象页微博容发布更新等功该系统采koa2框架进行开发数库选择关系型数库mysqlsession完成登录前端页面ejs端模板引擎redis作缓存数库基nodejs微博系统具轻量型易部署特点适合想推出微博网站户进行
    12 研究现状
    微博作媒体传播快速发展重特征正越越受关注[3]
    微博兴起改写传统媒体突发事件报道方式信息提供者事件围观者突发事件发展程紧密相关成事态发展影响者参者推动者突发事件报道舆传播中扮演着十分重角色[4]
    第二章 相关技术研究
    章介绍基node微博系统相关技术包括系统技术框架数库等
    21 Nodejs简介
    NodejsRyan Dahl2009年开发基 Chrome V8 引擎 JavaScript 运行环境[5]Chrome V8 引擎执行JavaScript具异常快速度非常优秀性Chrome V8引擎非常先进编译技术JavaScript样脚语言编写程序C等高级语言编写程序拥差性
    时Nodejs JavaScript 焕发新活力JS摇身变成服务端语言Nodejs编写理解JavaScript语言利NodejsAPI库进行服务器端开发[6]
    Python等动态语言相较JavaScript性突出匿名函数闭包特适合Nodejs事件驱动异步编程形中提高Nodejs性[7]
    Node优点:
    1.提供包含类实函数模块NodejsModule模块(类似C语言类库)划分出功模块提供相关功类实函数常HTTP库直接调函数快速创建HTTP服务器
    2 支持高发传统Web服务技术请求创建新线程系统线程分配存终会存够透支假设创建线程系统分配2M存台8G存系统发数4000[8]传统Web服务技术场景反观Nodejs会发现扩展性远远超传统认知单线程工作Nodejs非阻塞IO调够承受万发连接
    3 运事件循环解决规模HTTP请求Nodejs然单线程单进程采事件驱动机制异步编程风格(提供API基异步风格基事件)事件循环架构编写出扩展性高服务器[9]出现规模HTTP请求时Nodejs会产生事件循环队列剔掉线程资源占文切换Nodejs理解单纯数库文件等资源提供接口简化慢资源访问事件循环异步提高Nodejs性降低开发复杂度
    Nodejs发布伊始受前端工程师热爱开发高性发程序框架程序赖流线程方法异步IO事件驱动编程模型[10]作前端开发者迈入全栈工程师重程应场景十分广泛:网站搭建时聊天软件前端构建工具(熟知webpack)操作系统(NodeOS)跨台包工具(NWjs)命令行工具(Cordova)编辑器(VSCode)等时特殊机制Nodejs适解决规模计算问题(CPU密集型操作)[11]
    22 koa2框架
    Express学应该koa框架耳闻毕竟母生说koaExpress升级版语法处学Express接触koa会发现极容易手非常友
    koa两版现直接手koa2基ES7规诞生产物完全支持Promiseasync进行编码疑丢掉怕回调函数机会
    express框架终决定koa2框架然ExpressAPI简单始终时毕竟基ES5产物想通实现异步条路走——回调回调编程说十分繁琐特js异步编程说果异步嵌套层次会形成怕回调狱js异步编程角度express框架会排掉
    年前express团队基express中间件模型重新开发出koa2框架koa2原生支持async awit异步编程目前(者未三五年)支持js异步开发方式
    23 mysql关系型数库
    Mysql应该程序员入门数库
    目前企业中应广泛成低关系型数库般者中型企业说Mysql提供功已绰绰余 Mysql开放源码软件降低总体拥成
    然mongodb常node进行搭配数库mongodb企业中(特中型企业中)应绝没mysql广泛中型企业中中数库部分专门团队进行运维mysql熟悉程度数理远超mongodb
    终选择Mysql作帮存储数帮手
    24 session登录技术
    说登录然会联想cookiecookie安全然联想session
    session目前广泛登录技术较适合 页面统时候运端模板引擎样较集中 web sever 项目次开发微博页面较统会项目koa2框架中session 第三方中间件koasession记录请求者身份
    koasession方便做验证登录部帮做信息加密解密浏览器中信息串类似uuid乱码安全性极
    较流行登录技术——jwtjwt然日常会登录技术广泛程度session特web sever系统中
    25 EJS端模板引擎
    刚开始学端时候听句话——学端定掌握EJS模板确实发现美妙处
    E 代表嵌入(Embedded)高效(Effective)优雅(Elegant)者简单(Easy)
    EJS没组织容教条没造套迭代控制流语法理解熟知 JavaScript 代码已
    相vue者react等前端框架说端模板引擎更加方便快捷分工合作时喜欢前端分离开发端开发时更倾简单服务端渲染技术显然ejs次系统设计中需
    26 Redis缓存
    mysql禁联想数存储绝佳选手弥补mysql做事情Redis
    Redis关系型数库起错补充作JavaCC++Python等语言支持Redis[12]说Redis纯粹键值存储数库实数结构类型数库通Redis存储容二进制安全说数二进制形式进行传输保证数安全性(加密)[13]
    Redis支持存储类型十分常见字符串(string)链表(list)集合(set)序集合(sorted set)哈希表(hash)支持[14]什接纳Redis加特性特适合作系统公信息存储处
    实际情况法单台极保证系统直安全运行硬件障软件问题系统法Redis优势显示出够支持数库集群搭建高性高存数库集群正生产中必需正目前考虑缓存数库毫疑问选择Redis没什较强竞争手
    第三章 系统需求分析
    章基node微博系统进行详细分析包括行性分析功需求分析非功性需求分析数库需求分析四部分
    31行性分析
    行性分析项目中非常必果行性分析导致软件开发程中发现某方面行失败节中通技术济已开发行性三角度剖析改项目行性
    311 技术行性
    Nodejs2009年已完成年Github受欢迎语言贡献度占着第位置时Nodejs技术栈直急速发展中接触相关项目十分丰富技术肯定没问题
    MysqlRedis已相成熟数库书实战丰富参考资料互补充MysqlRedis提供数层面保障行
    Koa2框架年前express团队基express中间件模型重新开发原生支持async awit异步编程目前(者未三五年)支持js异步开发方式年已发展相完备具少参考资料Koa2进行开发完全行
    session目前广泛登录技术较适合 页面统时候运端模板引擎样较集中 web sever 项目次开发微博页面较统项目中session 第三方中间件koasession记录请求者身份完全行
    312 济行性
    开发该项目时普通笔记电脑满足般求单纯作学研究说普通笔记电脑济完全行
    312 开发行性
    Nodejs基JavaScript语言RedisMysql操作难综合说需学koa2框架精通JavaScript单完成操作期实际项目开发中JavaScript研究深入开发基node微博系统完全没问题
    综述开发完全行
    32 功需求分析
    进行量国外文档阅读实际功需求进行分析发布微博回复微博删微博@友发布图片关注粉丝等
    基node微博系统轻量化特性求项目实现注册登录信息修改微博发布删评等功支持户@友进行微博发布回复支持关注户支持发布图片
    1 注册
    众周知系统逃开注册项目采户名密码方式进行注册允许相户名重复注册已注册户名会进行检测出相关提示
    2 登录
    户户名密码登录系统系统输入户名密码进行校验判断成功否登录方进行微博发布转发等操作
    3 微博列表
    户发出微博需立显示列表中列表会根需求展示首页广场页页等页面
    4 发布微博
    作微博系统重功发布微博容关重必须先户发布微博会产生数量庞微博列表供浏览微博发布会立显示微博列表顶端
    系统允许游客进行微博发布游客必须通注册登录进行微博发布果游客未登录系统会提示先登录进行微博发布
    微博发布单帖字数限制
    5 删微博
    想微博户进行删处理
    6 插入图片
    传统文字描述户传喜欢图片搭配展示微博
    7 关注
    关注户微博系统特点
    说户通关注爱户群快获取程度信息快乐
    然取消关注功户时选择否继续关注户
    关注户前提条件必须先进行登录游客状态法进行关注
    8 @户
    发布者转发微博时@户户名样户会时收提醒便时准确查
    然户@关注户样防止@错二减少恶意骚扰性
    9 转发微博
    发布微博户微博进行转发达快速传播效果
    10 回复
    果发布微博显娱乐长期肯定会消户积极性时回复功显关重
    户微博原始发布者进行回复评者进行回复系统允许游客进行微博回复户需登录进行回复户游客状态点击回复钮系统动跳转登录页面户登录会动跳回刚刚访问页面单次回复字数限制
    11 设置
    导航栏中设置进行户信息修改包括昵称城市头修改密码
    提高户感受系统支持通点击户头访问设置进行信息查修改
    12 敏感词处理
    户发布微博回复微博前系统会进行敏感词处理果包含敏感词会出提示允许继续发布者回复
    33 非功性需求分析
    然非功性需求会影响系统逻辑定情况会影响系统功需求业务功关需求分两部分进行分析——性需求安全性需求
    331 性需求分析
    着科技极速发展种技术断更新换代必须考虑整系统复性求设计系统时技术发展工具者框架次系统设计中koa2框架基ES7开发良支持Promise+async实现异步ES7必定未趋势早步手定利提高系统复性
    外考虑户发微博系统特性导致某时间段会产生量户起登录情况系统必须保证维持稳定会卡顿访问该项目中Nodejs支持高发工作单线程非阻塞IO调够承受万发连接
    综诉通种途径保证性需求
    332 安全性需求分析
    作web程序系统定会端服务器进行持续信息交流必须保证系统受外部攻击说系统安全性避免成重中重
    系统中采koasession做验证登录部帮做信息加密解密二进制形式传递浏览器中信息串类似uuid乱码保证安全性
    34 业务流程分析
    充分结合系统功需求普通户业务总流程图绘制图31示图中涵盖系统普通户核心功
    图31业务流程分析图
    第四章 系统设计
    41系统架构设计
    微博系统分三层次——户界面层业务逻辑层数访问层架构设计模型图41示
    图41系统架构设计图

    (1)户界面层
    户界面层系统户界面系统中采EJS模板普通 JavaScript 代码生成终 HTML 页面展示户
    (2)业务逻辑层
    业务逻辑层搭理路相关数处理数库数操作概处理数传入该层会统种格式
    细说路实分业务逻辑层中考虑沟通户界面层业务逻辑层桥梁放层中
    (3)数访问层
    数访问层处系统底部数库直接相邻通该层实现数库增删查改数通接口提供业务逻辑层redis+mysql支持数访问层
    设计模型外网络角度出发绘制网络架构图阐述系统架构设计图42示
    图42网络架构图
    希通系统模块包图更加清晰展示包间关系通该系统架构设计做出系统模块包图图43示
    图43系统模块包图
    包图扩展出系统架构类图图44示通该图观察系统架构中静态结构图体现类相互静态联系致表现出类包含功点
    图44系统架构类图
    纳系统架构类通系统架构类交互图阐述系统工作流程系统架构类交互图图45示
    图45系统架构类交互图
    基础进步细化出系统边界图图46示通系统边界图帮进步明确整微博系统中象例间关系
    图46系统边界图
    42功结构设计
    微博系统实现众功基通功结构图展示出图47示
    图47系统功结构图
    43 系统详细设计
    微博系统户进行注册登录信息修改微博发布转发删回复支持发布者回复者转发时@户时感兴趣户进行关注关注粉丝户
    户例图48示
    图48普通户例图
    44功设计
    1 注册
    系统采户名密码方式进行注册允许户名进行重复注册户信息mysql+redis中session进行存储mysql 中users表存储户相关信息具体注册流程图410示
    图410注册流程图
    2 登录
    户户名密码登录系统系统会输入户名密码进行校验判断否登录成功
    果redis中session未期中获取相关信息直接判断已登录
    redis中相关数mysql中查询该户否存存加入redis中设置期时间具体流程图411示
    图411登录流程图
    3 微博列表
    微博列表通mysqlblogs表进行保存
    户未登录时显示广场页新微博组成列表户登录显示户微博关注户微博组成列表
    户滑定位置时果面数显示 查更钮点击继续查页微博列表
    具体流程图412示
    图412微博列表流程图
    4 发布微博
    发布微博信息存储mysqlblogs表中
    操作前需先检测户否登录未登录提示跳转登录页面登录允许输入微博容发布前检查否合法(140字含关键字敏感词)
    具体流程图413示
    图413发布微博流程图

    5 关注取消关注
    关注取消关注钮户界面显示默认显示关注钮果已关注户出现取消关注钮
    点击钮会先检测户否已登录游客状态法进行两行
    具体流程图414示
    图414关注取消关注流程图
    6 转发微博
    转发微博存储mysqlblogs表中isShared字段做出修改提示分析成功样登录户进行相关操作
    具体流程图415示
    图415转发微博流程图
    7 回复微博
    回复前需检测户否登录未登录提示跳转登录页面登录允许输入回复容回复前检查否合法(140字含关键字敏感词)合法提示发布成功
    具体流程图416示
    图416回复微博流程图
    45数库设计
    451 数库概念设计
    系统中选择mysql进行数存储根系统设计绘制出ER模型图图417示:
    图417数库ER图
    根系统功需求数库ER图进行细化象实体属性图
    (1) 户实体属性图418示
    图418普通户实体属性图
    (2) 微博实体属性图420示
    图419微博实体属性图
    452 数库逻辑设计
    系统mysql数库进行数理数表users表blogs表atRelations表userRelations表comments表
    (1)users表存储户相关数昵称户名密码头城市设置id键表41示
    表41 users表
    字段名称
    字段类型

    允许空
    备注
    id
    INT
    11


    userName
    VARCHAR
    255


    password
    VARCHAR
    255


    nickName
    VARCHAR
    255


    picture
    VARCHAR
    255


    city
    VARCHAR
    255


    (2)blogs表存储微博相关数微博id作者id微博容附加图片发布时间否删表42示
    表42 blogs表
    字段名称
    字段类型

    允许空
    备注
    id
    INT
    11


    userId
    INT
    11

    外键应 users表 id
    content
    TEXT
    280

    单帖140汉字
    image
    VARCHAR
    255

    图片址
    createAt
    DATETIME
    255


    isDel
    TINYINT
    1


    (3)atRelations表存储微博 @ 户关系相关数包括否已读等表43示
    表43 atRelations表
    字段名称
    字段类型

    允许空
    备注
    id
    INT
    11


    userId
    INT
    11

    外键应 users表 id
    blogId
    INT
    11

    外键应 blogs表 id
    isRead
    TINYINT
    1

    否已读
    (4)userRelations表存储户间关注关系表44示
    表44 userRelations表
    字段名称
    字段类型

    允许空
    备注
    id
    INT
    11


    userId
    INT
    11

    外键应 users表 id
    户id
    followerId
    INT
    11

    外键应 users表 id
    关注户id
    (5)comments表存储评相关数微博id作者id微博容附加图片发布时间否删表45示
    表45 comments表
    字段名称
    字段类型

    允许空
    备注
    id
    INT
    11


    userId
    INT
    11

    外键应 users表 id
    blogId
    INT
    11

    外键应 blogs表 id
    content
    TEXT
    280

    单帖140汉字
    image
    VARCHAR
    255

    图片址
    createAt
    DATETIME
    255


    isDel
    TINYINT
    1



    第五章 系统编码实现
    51核心功模块实现
    511 注册
    注册时3次判断户名否已存
    第次前端:端提供isExist方法前端前端通ajax请求apiuserisExist判断户否存出提示图51示:
    图51 前端代码
    第二次端:注册业务逻辑中注册数库前先通service层getUserInfo方法判断户名否已存果存允许进行注册图52示:
    图52 端代码
    第三次数库:dbmodelUserjs中设计数模型时规定userName唯性果唯数库会直接抛出错误图53示:
    图53 数库代码
    512 MD5加密
    增加数库信息前注册业务逻辑中(controlleruserjs)先md5进行密码加密图54示:
    图54 md5加密方法
    513 schema格式校验
    前端做出格式提示限制数页面传routes层时会进行数格式校验符合规数直接传递等数库判断格式否符合求提高户体验
    ajv库json schema进行格式校验执行json schema 校验通函数图55示:

    图55 格式校验
    514 传图片
    (1)限定
    路层formidableuploadkoa工具文件存储服务器某时文件夹中移动指定文件夹前判断文件删该文件返回错误提示信息符合求移动指定文件夹核心代码图56示:
    图56 限定
    (2)防止重名
    符合求文件加时间戳重命名文件名移动指定文件夹核心代码图57示:
    图57 防止重名
    (3)前端限定格式
    规定够通文件传进行提交文件类型图片前端核心代码图58示端核心代码图59示:
    图58 前端限定格式
    图59 端限定格式
    515 @功
    前端atjs库端通getAtList路返回@列表端格式化@户转链接形式核心代码图510示:
    图510 格式化@户转链接形式
    516 加载更 分页
    前端点击加载更时页页数通路动态参数传递端
    端通调controller层函数调service层函数进行分页连表查询路返回路层微博列表渲染 html 字符串返回前端渲染页面
    service层通findAndCountAll函数实现分页连表查询核心代码图511示:
    图511 service层findAndCountAll函数
    517 预防XSS攻击
    创建微博时xss工具xss函数帮助滤尖括号(转译特殊字符)然微博容存储数库中核心代码图512示:
    图512 预防XSS攻击
    518 广场页(redis缓存)
    广场页进行访问访问容样通redis缓存微博列表数减少请求优化代码
    核心代码图513示:
    图513 service层findAndCountAll函数
    52 系统页面展示
    (1)注册页图514示:
    图514 注册页
    (2)登录页图515示:
    图515 登录页
    (3)首页图516示:
    图516 首页
    (4)空间图517示:
    图517 空间

    (5) 空间图518示:
    图518 空间
    (6)设置页图519示:
    图519 设置页

    (7)广场页图520示:
    图520 广场页

    第六章 系统测试
    61 安全测试
    测试XSS攻击:果输入框输入会带出敏感信息js代码成功存储数库前端读取时会弹框中带出cookie信息带敏感信息js代码进行测试图61示:
    图61 测试XSS攻击
    数库中blogs表中存储容转译通安全测试blogs表图62示:
    图62 数库blogs表
    62 功测试
    功进行测试具体测试例表61示:
    表61 测试例
    序号
    例名称
    例操作
    预期结果
    测试结果
    1
    户注册
    输入户名密码
    输入正确
    符合预期
    2
    户登录
    输入户名密码
    输入正确户名密码进入微博系统输入错误户名密码出提示
    符合预期
    3
    发布微博
    输入框写入微博容点击发表钮
    符合字数求包含敏感词汇成功发布否出提示
    符合预期
    4
    传图片
    点击插入图片选择图片
    成功传图片格式错误出提示
    符合预期
    5
    修改信息
    输入昵称城市传头点击保存钮
    符合求成功修改符合求出提示
    符合预期
    6
    修改密码
    输入前密码新密码确认密码点击提交钮
    前密码新密码新密码确认密码相成功修改否出提示
    符合预期
    7
    退出登录
    点击退出登录钮
    成功退出登录
    符合预期
    8
    关注户
    点击关注钮
    成功关注关注列表中显示关注户
    符合预期
    9
    @户
    发布微博时@户点击发表钮
    @户收提示信息
    符合预期
    10
    转发微博
    点击转发钮
    成功转发微博
    符合预期
    11
    删微博
    点击删钮
    成功删微博
    符合预期
    12
    评微博
    点击评钮输入评容点击发表钮
    符合字数求包含敏感词汇成功评否出提示
    符合预期


    次微博系统开发中方面考虑系统性安全
    密码存储传递中充分考虑cookie弊端采取session存储户信息md5密码进行加密
    数存储数库前路层面进行schema格式校验符合规数运行传递改变等数库判断格式否符合求返回错误提示局面定程度提高户体验
    图片传功 仅限制图片前端端数库3层面进行格式筛选程度保证文件格式需求存储前图片名加时间戳防止重名情况发生
    广场页开发中采redis缓存公信息减少请求提高性
    安全方面考虑XSS攻击预防输入框中容存储数库前先进行特殊字符转译保证数安全
    然已竭全力做善美系统存足处前端页面没做特完美系统安全没考虑特充足力范围努力接时间希完善前端补足功

    参考文献
    [1] 朱莺 民国时期广播事业发展状况研究[J] 求索 2004(3)240242
    [2] 程辉 电视成历史教学帮手[J] 华章 2014(16)
    [3] 袁雳 浅谈微博时代娱乐节目互动[J] 科技企业 2013(14)252
    [4] 杨淑君 浅析微博时代突发事件报道[J] 中国贸 2013(18)2627
    [5] [EBOL]Nodejs中文网
    [6] 黄丹华 等Nodejs开发实战详解[M]清华学出版社北京20141
    [7] 张煜 种Nodejs构建分布式数流日志服务系统[J] 计算机系统应 2013(02)7073
    [8] Michael Abernethy Just what is Node js [M] BM developer works 2011 7892
    [9] Tom HughesCroucher Mike Wilson node Up and Running[M] USA OReilly Media Inc2012 5867
    [10] Tilkov S Vinoski S Nodejs Using JavaScript to Build HighPerformance Network Programs[J] IEEE Internet Computing 2010 14(6)8083
    [11] 朴灵深入浅出Nodejs[M]民邮电出版社北京20132326
    [12] Tiago MacedoFred OliveriaRedis Cookbook[M]USAO'Reilly MediaInc20115462
    [13] 超宇李金香Redis 高速缓存系统中应[J]微型机应201332(12)1113
    [14] Gao XiaoboFang Xianmei High performance distributed cache architecture based on redis[J] Lecture Notes in Electrical Enginering2013270(1)105111


    文档香网(httpswwwxiangdangnet)户传

    《香当网》用户分享的内容,不代表《香当网》观点或立场,请自行判断内容的真实性和可靠性!
    该内容是文档的文本内容,更好的格式请下载文档

    下载文档到电脑,查找使用更方便

    文档的实际排版效果,会与网站的显示效果略有不同!!

    需要 50 香币 [ 分享文档获得香币 ]

    下载文档

    相关文档

    基于Node.js Express框架的高校宿舍管理系统设计和实现

    本科毕业设计(论文) 基于Node.js + Express框架的高校宿舍管理系统设计和实现Design a...

    11个月前   
    359    0

    基于微博的信息热度评价与预测分析

    微博已成为时下非常热门的社交媒体平台,是一个庞大的关于信息分享和话题交流的平台,在人们线上社交活动中发挥着不可替代的作用,由于网络信息鱼龙混杂,所以本文通过了解微博的热度机制进而研究

    4年前   
    1074    0

    基于微信小程序的游戏玩家互动社区的设计与实现

     基于微信小程序的游戏玩家互动社区的设计与实现 ...

    10个月前   
    359    0

    基于SpringBoot博客系统的设计与实现

     基于SpringBoot博客系统的设计与实现Design and implementation of bl...

    2年前   
    972    0

    《基于unity的3D校园的设计与实现》

    基于unity的3D校园的设计与实现 Design and implementation of 3D camp...

    3年前   
    750    0

    基于ARM的智能电子秤系统的设计与实现

    随着现代社会的发展,对称重技术提出了更高的要求。目前,台式电子秤在商业贸易中的使用已相当普遍,但是仍存在较大的局限性:体积大、成本高、需要工频交流电源供应、携带不便、应用场所受到制约。现有的便携...

    3年前   
    1161    0

    基于JavaWeb的图书管理系统的设计与实现

    有效的处理想要的相关信息和如何传播有效的信息,一直是人类不断探索的动力。信息管理运用各种载体,传播通过各种介质,一直伴随着人类文明的发展史。随着互联网的到来,信息传播与管理都上升了一个新的台阶,...

    3年前   
    1133    0

    基于opencv的车牌识别系统设计与实现

     基于opencv的车牌识别系统设计与实现 ...

    2年前   
    747    0

    基于MATLAB的ASK调制解调实现课程设计

    大学《通信原理》课程设计报告学 院 专 业 班 级 学 号 ...

    3年前   
    726    0

    基于web学生成绩管理系统设计与实现

    随着计算机技术在各行各业的广泛应用,将计算机技术应用到学校中去,将大大提高学校管理的效率。学生成绩管理系统将在提高学校管理效率中发挥重要作用。

    3年前   
    945    0

    基于SSH框架的图书管理系统的设计与实现

    基于SSH框架的图书管理系统的设计与实现基于SSH框架的图书管理系统摘 要 如今已经我们已经步入了信息时代,而在信息科技快速发展的形势下,网络现已成为我们工作和日常生活中必不可少的一部分...

    2年前   
    758    0

    基于SSM的图书管理系统设计与实现

    随着时代的进步和科技的发展,更多的人通过图书馆借阅书籍来吸收知识,而传统的图书管理方式存在着许多不方便的地方,记录易丢失,所以开发一个易操作,高便捷性并且能够提升工作效率的图书管理系统是很有必要的。

    3年前   
    1646    0

    基于Vue+Django技术的电商网站的设计与实现

    该电商网站使用python框架django-rest-framework和前端框架vuejs开发,采用现在市面上大多数系统流行的浏览器/服务器模式结构。该项目需要使用vuejs框架开发前端界面,...

    3年前   
    929    0

    基于JSP的网上书店推荐系统设计与实现

    本系统旨在设计一个网上的书店和书籍相关信息的服务网站,网站的基本运作流程如下:

    3年前   
    571    0

    基于SpringBoot的新闻发布与管理系统的设计与实现

     基于SpringBoot的新闻发布与管理系统的设计与实现 ...

    2年前   
    799    0

    基于JAVA WEB的考勤系统设计与实现

    基于 JAVA WEB 的考勤系统设计和实现Design and Implementation of Attendance System Based on JAVA WEB摘要科技的发展,带动...

    11个月前   
    364    0

    —基于机器学习的人脸识别算法的设计与实现

    人脸识别技术是一种新型的生物特征认证技术。人脸识别技术也是一个非常活跃的研究领域,涵盖了许多领域,例如数字图像处理。随着人们对应用程序需求的增长,面部识别技术趋向于大量使用,使用微芯片和标准化。

    3年前   
    830    0

    基于Java的图书馆座位管理系统的设计与实现

    目前,如何利用计算机系统来对座位进行管理是解决占座问题的关键。该图书馆座位管理系统是基于Java架构,采用Eclipse开发工具,使用SSM等前端开源框架,以MySQL为后台数据库,Tomcat...

    3年前   
    1848    0

    基于Java的网上购物系统的设计与实现

     XX 学 院 本科毕业论文(设计) 题 目 基于JAVA的网上购物 系统的设计与实现 院 系 计算机...

    5年前   
    2588    0

    基于android的物业管理系统的设计与实现19.8

     目录基于android的物业管理系统的设计与实现 3摘 要 3Android property managemengt system 5Abstract 51 绪论 61.1 选题背景 6...

    3年前   
    805    0

    文档贡献者

    平***苏

    贡献于2023-06-06

    下载需要 50 香币 [香币充值 ]
    亲,您也可以通过 分享原创文档 来获得香币奖励!
    下载文档

    该用户的其他文档