我接触nodejs 纯属是误打误撞,之前在做一个房地产项目的时候,客户提出了一个需求,我大概整理一些“我们需要员工只能在公司登陆房管系统并进行操作,回家是不允许进行登录的”,其实对于房产中介来说源数据很珍贵也很稀缺,各个中介都在想尽办法去找一些会搞爬虫的,想赚钱的程序猿去各个竞品官网去爬一些数据,记得很疯狂的我也搞过,数据是按条卖的这类专供数据的人还有一个响亮名称叫...一时半会想不起来了,算了我可能也是老了记忆力也不好了,哈哈,言归正传,针对客户的需求我们提供的解决方案其实也很实用,封装一个浏览器的壳子打包成EXE文件,然后在壳子里面调用一个web 接口,内核浏览器拿到电脑的网卡地址也是MAC地址,当用户打开EXE文件的时候,拿到MAC地址调用服务端的验证MAC地址接口进行验证,这就是我给出的解决方案。 毕竟之前在做中国银行和电信的资产系统的时候由于Extjs 4.0 对浏览器是有要求的,也是为了赶项目我就用.NET写了一个小东西,主要是打一个Goole内核浏览器进去,这样只要客户安装打开就可以解决浏览器的兼容问题,其实我也是偷懒了但也算解决问题,在处理这个问题上我又想起来同样的解决方案。

首先用.NET 封装一个浏览器内核进去,然后打包成可执行的EXE便于用户使用,但问题来了我在打包浏览器的时候发现 这个浏览器内核没有更新,导致前端写的样式在这内核浏览器下兼容性还是有问题,这下直接断了我玩.NET的路,抽了几根烟想了想,我把希望寄托给了QT((是一个1991年由Qt Company开发的跨平台C++图形用户界面应用程序开发框架。它既可以开发GUI程序,也可用于开发非GUI程序,比如控制台工具和服务器。Qt是面向对象的框架,使用特殊的代码生成扩展(称为元对象编译器(Meta Object Compiler, moc))以及一些宏,Qt很容易扩展,并且允许真正地组件编程。2008年,Qt Company科技被诺基亚公司收购,Qt也因此成为诺基亚旗下的编程语言工具。2012年,Qt被Digia收购。2014年4月,跨平台集成开发环境Qt Creator 3.1.0正式发布,实现了对于iOS的完全支持,新增WinRT、Beautifier等插件,废弃了无Python接口的GDB调试支持,集成了基于Clang的C/C++代码模块,并对Android支持做出了调整,至此实现了全面支持iOSAndroidWP,它提供给应用程序开发者建立艺术级的图形用户界面所需的所有功能。基本上,Qt 同 X Window 上的 Motif,Openwin,GTK 等图形界面库和 Windows 平台上的 MFC,OWL,VCL,ATL 是同类型的东西。))  于是下载了QT,进行学习进行开发问题来了要学C++,时间紧我感觉自己还是有点吃力,这可怎么办,挠头,喝蛋白粉吃方便面,吃面包加巧乐兹。哈哈哈哈。。

吃饱后我找了一个以前公司的同事咨询了下,于是我想了一个方案,我觉得学习nodejs也是挺有意思了,毕竟比QT要轻一点,再加上CNPM资源库还是很丰富的,于是我们就开始搞定下面这个方案,花了三天搞定。有时觉得技术源于生活但又高于生活,在一个需求点上其实按照现在的技术成熟度你能想一千的解决方案,我的图实在是画的不咋的,我又偷懒了对不起大家的眼睛呀,大家的眼睛就这样被我这张草图给强奸了,哈哈哈,我争取以后不偷懒了好好画图,主要是我饿了。。。。。

前几年NODEJS现在被各大公司用于网络层中间件,但这几年它已经成为快速开发桌面化应用程序的首选,到处都能看见它的身影

NODEJS的误打误撞的更多相关文章

  1. webpack打包nodejs项目(前端代码)

    PS.若本文没有帮到你可以看看我的进阶版点此前往 适用情况 首先说明,此情况不具备普遍性.若你的情况与笔者类似那么希望这篇文章能够帮到你. 我的项目情况是这样的:用node.js做后台,ejs做模板引 ...

  2. NodeJs之OS

    OS Node.js提供了一些基本的底层操作系统的模块OS. API var os = require('os'); console.log('[arch] 操作系统CPU架构'+os.arch()) ...

  3. NodeJs之Path

    Path模块 NodeJs提供的Path模块,使得我们可以对文件路径进行简单的操作. API var path = require('path'); var path_str = '\\Users\\ ...

  4. NodeJs之调试

    关于调试 当我们只专注于前端的时候,我们习惯性F12,这会给我们带来安全与舒心的感觉. 但是当我们使用NodeJs来开发后台的时候,我想噩梦来了. 但是也别泰国担心,NodeJs的调试是很不方便!这是 ...

  5. NodeJs在Linux下使用的各种问题

    环境:ubuntu16.04 ubuntu中安装NodeJs 通过apt-get命令安装后发现只能使用nodejs,而没有node命令 如果想避免这种情况请看下面连接的这种安装方式: 拓展见:Linu ...

  6. NodeJs之child_process

    一.child_process child_process是NodeJs的重要模块.帮助我们创建多进程任务,更好的利用了计算机的多核性能. 当然也支持线程间的通信. 二.child_process的几 ...

  7. nodejs进阶(6)—连接MySQL数据库

    1. 建库连库 连接MySQL数据库需要安装支持 npm install mysql 我们需要提前安装按mysql sever端 建一个数据库mydb1 mysql> CREATE DATABA ...

  8. 图片访问实时处理的实现(nodejs和php)

    我在访问时光网.网易云音乐等网站时,发现将它们页面中的一些图片URL修改一下就可以得到不同尺寸的图片,于是思考了其实现方案,我的思路是:URL Rewrite + 实时处理 + 缓存,对用户请求的UR ...

  9. nodejs进阶(4)—读取图片到页面

    我们先实现从指定路径读取图片然后输出到页面的功能. 先准备一张图片imgs/dog.jpg. file.js里面继续添加readImg方法,在这里注意读写的时候都需要声明'binary'.(file. ...

  10. nodejs进阶(3)—路由处理

    1. url.parse(url)解析 该方法将一个URL字符串转换成对象并返回. url.parse(urlStr, [parseQueryString], [slashesDenoteHost]) ...

随机推荐

  1. 在Mac的哪里可以找到bashrc文件

  2. CUDA的新功能

    CUDA 9: 配合Volta架构推出: 1. 新的多线程编程范式.Cooperative Groups 2. 优化算法库 CUDA10: 配合Turing架构推出. 1. 新增了对TensorCor ...

  3. linux 查看product_uuid,即主板id,机器识别码,需要root权限

    1. 用命令 sudo dmidecode  | grep UUID 或者 sudo lshw  | grep uuid 2. 直接查看文件描述 sudo cat /sys/class/dmi/id/ ...

  4. 代码行数统计(指定目录下所有文件的Line)

    遍历文件夹计算文件行数(Windows) 主要使用的是 FindFirstFile. FindNextFile函数寻找子目录下的文件,使用 WIN32_FIND_DATA(文件属性) 结构体 #def ...

  5. R7-7 调查电视节目受欢迎程度

    R7-7 调查电视节目受欢迎程度 分数 15 全屏浏览题目 切换布局 作者 颜晖 单位 浙大城市学院 某电视台要调查观众对该台8个栏目(设相应栏目编号为1~8)的受欢迎情况,共调查了n位观众(1≤n≤ ...

  6. java 为什么要用补码_Java为什么使用补码进行计算的原因分析

    转自csdn---主要是前面的解释很通俗易懂,后面的没有细看,转过来以后查看方便. 我们主要要解决的问题就是负数的表示,而众所周知,绝对值相等的两个正负数之和为0. 假设我们有正数 0000 0000 ...

  7. json extionsion

    using System.Collections.Generic;using Newtonsoft.Json;using Newtonsoft.Json.Converters; namespace D ...

  8. vue-vite-ts 新版

    Vue 后台管理系统 一.系统创建 1.1.环境检测 $ node -v v18.10.0 $ npm -v 9.1.2 ## 若没有该命令 需要用 npm install -g pnpm 安装 $ ...

  9. (一)REDIS之常见数据结构及操作

    (一)基本数据结构 1.1 String结构: String底层结构是动态字符串,可修改指定位置数据,通过预分配冗余空间减少内存的频繁分配,实际分配的空间capacity一般要高于实际字符串长度len ...

  10. CORE8051-APB总线

    1 APB总线 core8051s内核支持APB3总线,APB writebuffer 为{XWB3, XWB2, XWB1, ACC}; 写访问 对FC00以上地址写值,即表示APB写操作,值为(X ...