如果Web系统需要调用特定ActiveX控件才能操作,像身份证阅读器、读卡器、获取电脑网卡MAC地址等,而且预计控件厂商在一段时间内无法解决浏览器兼容性问题,那我们能不能想法让用户在非IE浏览器中也能调用控件呢?

本文提出一种解决思路:开发一个“控件小助手”代理程序。该程序安装在用户电脑中,负责调用ActiveX控件,并在本地建立一个简易Web Server,而业务系统相关页面则通过Ajax(备注:实际是JSONP)调用代理接口,从而间接地与控件交互。

阅读全文 »

对于行业系统来说,如果开发人员水平一般,而且又忙于赶工期,Web安全问题就很容易抛到脑后。然而,在这类系统中,用户输入内容往往是业务相关的,范围可以预测,不会特意输入敏感词语,因此又可以用简单粗暴的方法挡住大部分常见攻击。

在Java应用中,页面加载之前会先经过过滤器(Filter),我们便可以设置一个安全过滤器SecurityFilter,以“宁可错杀一万,不可放过一个”的方式拦截常见攻击,满足基本的安全需求。

阅读全文 »

道理大家都懂,其中的坑大家却不一定都清楚。

在中国,使用盗版软件已经是习以为常的事情。即使你去公安局自首,说自己电脑上装了一堆破解版,警察叔叔也不会把你抓起来,只会把你轰回家。但是请注意,给公司工作就是另一码事了——律师函警告!

希望借本文给大家提个醒,挣钱不易,务必小心!

阅读全文 »

非功能性需求不会给项目带来收益,然而非功能性需求不仅要在需求阶段考虑好,而且在设计与开发过程中也要多加留意,否则都会成为项目的坑……

本文以一个政府的Web应用项目为例,讨论一些容易遗忘的非功能性需求。

阅读全文 »

微信机器人是一个比较难搞的东西,因为微信登录比较麻烦,而且官方不仅不提供API,还积极封杀机器人和“非法登录”的途径,导致研发风险较大。目前比较成熟的两种方式是模拟微信网页版以及程序控制微信PC版应用。

本文采用Puppeteer框架,借助真实的浏览器访问微信网页版,模拟浏览器的正常操作,以降低被封杀的风险。

阅读全文 »

为甲方升级系统时,堡垒机应用服务器正常,唯独FTP出现故障,无法上传程序包(堡垒机软件不支持直接向Linux服务器传文件)。在为无法完成部署任务发愁时,我们发现借助专用VPN可以直连甲方的Oracle数据库,并以DBA身份登录,于是我们临时编写了一款“基于Oracle的文件传输工具”。

阅读全文 »

Puppeteer是Google搞的爬虫框架,其特点就是我们可以直接通过程序来操作Google浏览器(服务器没装图形界面也没关系,这个Google浏览器不需要图形界面)。通过这个框架,我们就可以像正常使用浏览器一样爬网站,并且像进控制台那样操作页面获取信息,甚至还可以截图。只要网站不使用验证码或reCAPTCHA之类的大杀器,而且运营者不希望正常使用浏览器的用户也无法访问页面,那么我们就可以随便扒网站了。例如本文从https://tw.manhuagui.com网站扒漫画。

阅读全文 »
0%