• 【原创】简单的局域网内无线文件传输(1)


    在正文开始之前,我想发发牢骚吧,最近手头的项目太紧,所以那个C++系列很久没有更新,请大家谅解,等到项目完成后,一定会有更多的更新,当然还有发消息给我的朋友,感谢你们的关注,我一定会在五月一一给你们回复~再次感谢!

    正文开始:

    一、方案背景:

      在现在这个时代,Wifi设备的普及正在以迅雷不及掩耳的速度在整个社会中蔓延开来,手机、笔记本电脑、游戏机PSP等……似乎好像要来个全民Wifi!所以,可以预见,未来在短距离、大通讯量的应用上,WIFI还是一个比较不错的平台。

      还记得不久前,我前去客户那里做需求调查工作,工作使用的笔记本就直接加入了客户的无线局域网中,但是拿着笔记本走来走去也不太方便,于是,我就带着PPC,用它来做各种记录和调查,当然,有时候也会把一些拜访客户的问题放到PPC上,以免我忘了。每次PPC和PC间的文件同步过程比较痛苦,毕竟是有线连接,我就在想,我是否可以直接把在PPC端搜集到的信息直接发到PC机,我在楼下时,可以从PC机共享的资料中获取文件到PPC,我就不用再跑上楼了(客户那里有好几层)。于是,这个无线文件传输方案在我脑海中逐渐成形。

    二、方案介绍:

      这个方案主要解决的问题就是要方便、快捷的完成无线局域网内,两个设备(台式机、智能手机)的文件交换。所以,可以看到,此方案有两个显著特点:方便、快捷!

      首先,说说方便吧。我也研究过如何让PPC和PC在wifi局域网中共享文件,额,虽然说过程和PC间共享文件差不多,但是也要经过很多设置,比如添加受信的用户,指定此用户是这些文件的可访问者……哎,最后我照着做了一遍,最后由于人品问题,失败!

    所以,我们要让用户能够很方便的,把想交换、共享的文件进行一些简单操作,就能让“别人”可以在局域网中看到并获取到!

      其次,快捷。其实就是快速传输,一般要在手机端使用的文件,体积都不会很大,所以,这一点倒是很容易做到。在这里我们先不做深入讨论吧。

    说到这里,我们来看看方案的技术方面的东西。

      第一个进入我脑海的技术方案,就是点对点的通讯。比如:TCP或者UDP。可能是我比较熟悉这两种技术吧,当然,还有熟知的Sync 微软的那一套同步组件,貌似也不错啊!但是,由于我只想简单的实现文件的传输,所以,还是选择了前一种方式!

      技术方案决定了,那么来看看,我们需要用它完成一个什么样的业务功能吧。我想最好的解释就是图片,于是,Visio了一下,大致业务场景如下:

     

      PC机共享了一些文件,我拿着PPC通过WIFI可以访问到这些共享文件,然后按需索取到PPC,当然,我也可以把PPC上的文件发送到PC中!

    从上面的业务场景来看,我们的系统要完成的功能很明了:

    1. 在设备间建立连接
    2. 用户通过PPC选择一个本地/远端文件,进行上传/下载操作
    3. 在设备间完成数据传输(获取文件列表、传输文件本身……)
    4. 捕获异常,传回状态结果
    5. 断开设备间的连接

      Ok,至此,貌似我们的整个系统功能大致也就浮出水面鸟。我将在接下来的一篇文章中,讨论详细的系统功能结构等问题,敬请关注。 

    作者:Jack Fan初学博闻
    出处:http://longqi293.cnblogs.com
    本博文欢迎大家浏览和转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,在『参考』的文章中,我会表明参考的文章来源,尊重他人版权。若您发现我侵犯了您的版权,请及时与我联系。

    知识共享许可协议
    本篇博文 by Jack Fan is licensed under a Creative Commons 署名-非商业性使用-相同方式共享 2.5 中国大陆 License.

    这是我的公众号,【代码只是副业】

  • 相关阅读:
    JS-BOM操作-Location、history、常用弹窗、屏幕属性
    JS的基础DOM操作-选取父子级元素、动态生成元素、修改元素、Classlist
    setup
    循环请求接口,统一处理
    多个url文件下载
    扁平数据结构转Tree
    es6 解构赋值
    watch与computed与props
    v-model与.sync组件通信
    v-on="$listeners"和v-bind="$attrs"
  • 原文地址:https://www.cnblogs.com/longqi293/p/1721680.html
Copyright © 2020-2023  润新知