- 博客(43)
- 收藏
- 关注
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 v5行为验证使用介绍(三)- 程序接入流程
接入流程V5验证码前后端对接流程如下图所示:对接V5验证码分为业务网站后台api对接以及业务前端代码引入两部分。业务网站后台获取验证Token及验证服务器(getToken)用于网站后台定时通过V5控制台刷新获取验证所需要的Token及验证服务器地址。Token有效期为24小时。请求方式:GET调用示例:curl -X GET 'https://www.verify5.com/o...
2019-09-05 00:29:17
3056
1
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 v5行为验证使用介绍(一)- 试探攻击的威胁
大数据“黑产”远比想象的厉害,网站没有受到攻击不是技术问题,而是没有利益驱动。对于大多数网站来说,数据被窃取是无法主动察觉的。在“AI”/“众包”时代,“白盒模式”验证已无法保护网站安全,“黑盒模式+大数据智能分析”是未来主流验证方式。
2019-09-05 00:27:51
3617
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 v5行为验证使用介绍(四)- Verify5Client.java
用法这个类封装了v5应用端定时刷新token、获取host、二次验证的行为,内置了签名算法的实现。实际使用时,可将Verify5Client作为单例对象来管理。例如:应用启动时初始化String appid="从控制台获取APP ID";String appkey="从控制台获取APP Key";Verify5Client v5client=new Verify5Client(app...
2019-09-05 00:27:35
1953
转载 StratoIO WebPrinter打印控件是否支持双面打印?StratoIO WebPrinter 常见的问题,
WebPrinter常见问题1.该打印控件是否支持双面打印? 我们的控件是支持双面打印的,由于打印机有双面打印机和非双面打印机之分,我们的控件会检测到你的打印机是否支持双面打印来呈现你最后实现的打印方式。如果是双面的打印机就额可以在如下图中勾选双面打印。反之则不能勾选。2.是否可以直接打印PDF格式的文件? PDF打印功能已经集成到1.2之后的版本,但目前还属于测试阶段,频繁大
2017-09-20 18:06:32
668
转载 StratoIO WebPrinter 是什么?StratoIO WebPrinter实现打印的过程,StratoIO WebPrinter Javascript API
Strato WebPrinter是一款面向HTML浏览器的Web打印代理软件,WebPrinter提供了简单而又灵活的API,浏览器与WebPrinter的交互均通过Javascript API完成。 一、 引入Javascript APIStrato WebPrinter的Javascript API非常小,只有不到7K。我们提供了CDN地址,可以直接引用CDN,也可以转存到项目引用。CDN地
2017-09-20 17:53:43
556
转载 Strato WebPrinter的使用说明, Strato WebPrinter控制面板的设置
WebPrinter自带控制面板,控制面板是一个桌面程序,提供打印任务查看、打印机管理、页面设置、纸张设置等功能。由于Strato WebPrinter提供的JS API基本上涵盖了所有控制面板拥有的功能,因此任务参数均可由编程人员传入,在生产环境下最终用户可能不会用到控制面板。但在某些场景下用户可设置一些默认值,如默认打印机、默认纸张、默认页边距等,开发人员也可以通过控制面板了解Strato We
2017-09-20 16:39:21
2414
转载 StratoIO WebPrinter在哪里下载?StratoIO WebPrinter怎么安装?StratoIO WebPrinter下载与安装的步骤
注:本文档链接可直接分享给最终用户作为安装手册之用 1.下载安装文件 我们提供最新版的通用安装程序,标准版和高级版用户可导航至 http://webprint.stratoio.com/download 点击“高速下载”按钮下载,如下图所示。 对于定制版安装,开发者可登录后获得下载地址。需要注意的是,定制版为本地下载,带宽有限,请开发者转存后再发布到自有的应用托管下载,以获得更好的用户体验
2017-09-20 16:08:54
593
转载 StratoIO WebPrinter的工作原理
背景随着软件开发技术逐渐由C/S架构转向B/S架构,打印逐渐成为Web开发人员需要面临的问题。日益强大的CSS样式表技术可以很方便的实现复杂的布局与显示,但由于Web技术对程序的安全沙箱控制,打印的最后一步:输出到打印机却是一个难题。我们调研了大量Web软件,发现针对Web打印解决方案,主要有如下几种技术实现方式: 1.直接调用Javascript打印通过调用浏览器window对象内置的print
2017-09-20 15:28:50
2084
转载 StratoIO WebPrinter的几种打印方案,打印机池、并行打印、框架打印、移动端打印
WebPrinter扩展方案 打印机池开发人员可以充分利用WebPrinter基于任务的打印设置特性,并结合WebPrinter的打印机管理API,在JS端对打印机设备进行分组管理。通过将多个打印机的进行分组,通过打印机池管理,解决单台打印机出错导致任务中断的问题,实现打印队列高可用。 并行打印在某些批量打印场景中,打印机的打印速度往往跟不上任务的处理速度,长期运行会造成打印任务的堆积,降低软件
2017-09-20 15:23:12
1192
转载 StratoIO WebPrinter Web打印控件的功能与特性
WebPrinter功能与特性 Html友好的打印方式 打印内容以HTML片段和URL两种方式传入,支持在HTML片段中嵌入CSS,支持在URL中嵌入Javascript和CSS 兼容主流浏览器 JS SDK可在Internet Exploerer 6+、Microsoft Edge、Firefox、Chrome、Safari、Opera等浏览器上运行,且不依赖于任何第三方JS框架,在各种运
2017-09-20 14:29:36
2297
转载 深思“以客户为中心”
大约在上世纪末和本世纪初,一个舶来的概念几乎成了国内银行界最流行的口号,这就是“以客户为中心”。诸如银行经营与管理的转变在于是否“真正树立以客户为中心的经营思想”;银行营销策略成功的关键在于“认真贯彻以客户为中心的经营方针”;银行信息化升级的目的在于“充分体现以客户为中心的功能需要”等等。现在看来,无论是银行,是客户,还是信息服务提供商,对这一概念所蕴含
2009-05-31 17:31:00
817
原创 Javascript RIA框架开发要点
基本功能:1.一个将相对路径转换为全局路径的函数2.一个宿主探测器,用于判断浏览器的类型和版本,以实现对跨浏览器的支持3.面向对象扩展,包括类继承(extend)和实例动态扩展(mixin)4.一个异常管理机制,包括抛出(throw)和接住(catch)时的处理(如日志,调试信息等)5.json支持,包括序列化与反序列化扩展功能(均需考虑跨浏览器):6.一个动态类加载机制,基于ajax,可选7
2007-04-15 10:16:00
1148
原创 dojo入门(未完待续)
目 录 目 录... 1第一章 Ajax开发模式介绍与什么是Dojo. 3一、 Web应用编程技术概述... 31. Web编程工具简介... 32. 使用Ajax开发Web应用... 4a. 什么是Ajax?. 4b. MVC与Ajax. 4c. Ajax开发工具简介... 5
2007-04-15 09:11:00
4404
1
原创 JavaScript中AOP的实现和日志记录
通常,在胖客户端B/S从程序中,前端JavaScript脚本是最难维护的,由于客户端运行环境的多样性和脚本对运行属主的依赖型,开发人员常常无法将用户的错误在本机上重现.于是,当大量JavaScript存在的时候,对系统运行状态(包括日志和性能)的监视显得特别重要.当某个客户端出错或宕机时,就可以要求用户将系统运行历史和当前信息发送给开发人员进行分析.然而,当日志过多的侵入业务逻辑代码,则可能将
2007-03-09 01:07:00
2092
原创 title效果
var CommentViewer=new Object();CommentViewer.commentDiv=document.createElement("div");CommentViewer.commentDiv.style.backgroundColor="orange";CommentViewer.commentDiv.style.zIndex=99;CommentViewer.co
2006-07-08 14:13:00
995
原创 实现select菜单联动的javascript方案
test.js:window.attachEvent("onload",initXMLCascadeMenu);function $(id){ return document.getElementById(id);}/*** XmlCascadeMenuHelper:用以维护一组select的dataSource定义,包括selec
2006-07-08 12:36:00
1647
原创 Absolute Position
function getAbsPosition(obj, offsetObj){ var _offsetObj=(offsetObj)?offsetObj:document.body; var x=obj.offsetLeft; var y=obj.offsetTop; var tmpObj=obj.offsetParent; while ((tmpObj!=_offsetObj) && tm
2006-06-12 13:52:00
783
原创 RoyalAjax(15)------QueryDictHandler.java
package com.ajax.setup;import java.sql.SQLException;import com.support.ajax.AjaxHandler;import com.support.ajax.AjaxReturnBean;import com.support.basic.DefaultAction;import com.support.basic.Req
2006-04-17 00:04:00
862
原创 RoyalAjax(14)------RoyalHandler.java
package com.ajax;import com.support.ajax.AjaxHandler;import com.support.ajax.AjaxReturnBean;import com.support.basic.DefaultAction;public abstract class RoyalHandler implements AjaxHandler { pro
2006-04-17 00:02:00
811
原创 RoyalAjax(13)------RequestWrapper.java
package com.support.basic;import java.util.ArrayList;import javax.servlet.http.HttpServletRequest;public class RequestWrapper { /** * From ISD * @param p_Param_name * @return
2006-04-17 00:00:00
980
原创 RoyalAjax(12)------ajax_header.jsp
/js/global.jsp">/js/data_struct.jsp">/js/form.jsp">/js/navigation.jsp">/js/ajax.jsp">/js/table.jsp">正在载入数据,请稍等.function ChangeAjaxNotice(){ var div=$("AjaxNotice"); if(div.innerText.length div.innerT
2006-04-16 23:51:00
867
原创 RoyalAjax(11)------TestObject.java
package com.support.ajax;public class TestObject { String[] arr; int i=12; float f=3.4F; double db=4.0; long l=3000L; TestObject another; /** * @return Returns the another. */ public TestObject
2006-04-16 23:49:00
882
原创 RoyalAjax(8)------AjaxHandler.java
package com.support.ajax;import com.support.basic.RequestWrapper; /** * All Ajax Handlers Must Implement this Inteface * @author Jarez * */public interface AjaxHandler{ /** * handles a reques
2006-04-16 23:48:00
813
原创 RoyalAjax(10)------AjaxUtil.java
package com.support.ajax;import java.beans.BeanInfo;import java.beans.Introspector;import java.beans.PropertyDescriptor;import java.util.AbstractCollection;import java.util.Iterator; public cl
2006-04-16 23:48:00
995
原创 RoyalAjax(9)------AjaxReturnBean.java
package com.support.ajax;import com.support.basic.RequestWrapper; /** * All Ajax Handlers Must Implement this Inteface * @author Jarez * */public interface AjaxHandler{ /** * handles a reques
2006-04-16 23:46:00
776
原创 RoyalAjax(7)------AjaxProcessor.java
package com.support.ajax;import java.io.IOException;import java.io.PrintWriter;import javax.servlet.ServletConfig;import javax.servlet.ServletException;import javax.servlet.http.*;import com.s
2006-04-16 23:43:00
676
原创 RoyalAjax(6)------table.jsp
/*usage:SimpleInsertRow(table,data[],style)*/function SimpleInsertRow(){//add by wuj Jul 4th,2005 var args=arguments; var _tblName=args[0]; var _cols=args[1]; var _classname=args[2]; var _tbl=document
2006-04-16 23:39:00
616
原创 RoyalAjax(5)------navigation.jsp
/****@class Helper shows a help bar with custom messages*@author Jarez wu,2006-1-17**/function Helper(name){ this.name=name; document.write("");}Helper.prototype.showHelp=function(msg){ var html="";
2006-04-16 23:38:00
742
原创 RoyalAjax(3)------form.jsp
/*****FormValidator****/function FormValidator(){}FormValidator.prototype.handleValid=function(elem){}FormValidator.prototype.handleInvalid=function(elem){ elem.focus(); elem.select();}FormValidator
2006-04-16 23:37:00
620
原创 RoyalAjax(4)------global.jsp
function debug(str){ if(Debug=="on"){ alert(str); }}function trim(s) {//get rid of blanks before and after s var m = s.match(/^/s*(/S+(/s+/S+)*)/s*$/); return (m == null) ? "" : m[1];}f
2006-04-16 23:37:00
758
原创 RoyalAjax(2)------data_struct.jsp
/***Iterator****/function Iterator(arr){ this.i=0; if(arr&&!arr.length){//singble element this.arr=new Array(1); this.arr[0]=arr; }else{ try{ if(arr.type&&arr.type.match(/^select/)){//select?????
2006-04-16 23:36:00
800
原创 RoyalAjax(1)------ajax.jsp
/****AjaxFactory£¬¸ºÔðÉú²ú²¢Î¬»¤AjaxÀàʵÀý***/function DefaultAjaxFactory(){ this.map=new Map();}DefaultAjaxFactory.prototype.createAjax=function(){ var name=Math.random(); var ajax=new Ajax(name);
2006-04-16 23:35:00
748
原创 移植是痛苦的
从postgre到mysql到apache derby,总有一些语法、函数、保留字的区别。今后在设计表的时候一定要注意。最好遵循标准sql。
2006-04-08 15:05:00
640
原创 今日发现mysql的一个bug
最近洒家忙昏了,为了便于安装和打包,决定把RoyalYL的数据库从postgreSqL移植到Mysql,在移植的过程中却碰到中文化的问题,下面给出我试过的一个环境和代码,希望能有人帮忙解决。操作系统为中文win2kmysql5.0环境:字符集gb2312,测试数据库create table test_table (test_id character varying(10));字符集gb23
2006-04-08 14:53:00
997
原创 为html表单域添加属性实现表单的javascript验证
为表单域添加属性实现表单验证对表单的字段进行有效性验证也是个非常麻烦的事情,目前各种服务器端的程序(如Struts和WebWork)已经提供了Validation的机制,其实,若不需要那么高的安全性,完全可以把对表单的数据验证交给客户机来运行。这里我利用了Javascript灵活的语法和动态运行的功能(eval函数)提供了一个表单验证的javascript模型。并实现了常用的类型验证。假设
2006-02-17 23:56:00
1812
原创 RoyalAjax(三),Java对象的序列化
尽管目前已有很多将POJO序列化的方式,但鉴于将要被序列化的都是Java的简单对象,对生成的XML也不要求验证,完全可以用下面的代码递归生成: /** * get XML document from an object ,author by Jarez Wu * @param o an object * @return the XML-encoded String; */ public
2006-02-07 23:37:00
651
原创 工欲善其事,必先利其器----一些javascript的数据结构和工具类
一、堆栈,队列这些是最基本的,所幸javascript中的数组(Array)已经提供了相应的操作了,我们既可以将同一个Array作Queue使用(push,shift),也可以作Stack使用(push,pop)。此外,数组还提供了排序,翻转,连接等功能。在RoyalAjax中我用到了一个StackSet类,这个类提供了一个堆栈的简单实现,并保证两次连续的入栈值不重复。function
2006-02-07 22:39:00
983
原创 RoyalAjax(二),对HttpRequest的封装
要成功利用Ajax的异步性优势,就必须为每个HttpRequest注册独立的处理函数,而为了使javascript代码可被java程序生成,必须为每个处理函数命名,在这一点上,面向对象的包或命名空间的概念为我们提供了很好的参考。可以直接延用这一规则,于是想到了javascript的面向对象特性。现在考虑一个类Ajax,其封装了HttpRequest。在这一实现上,一般将HttpRequest作
2006-02-07 00:22:00
1124
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人