param

跨站脚本攻击XSS

青春壹個敷衍的年華 提交于 2019-12-06 06:54:47
XSS简介 跨站脚本攻击,英文全称是Cross Site Scrit,本来缩写是CSS,但是为了和层叠样式表(Cascading Style Sheet, CSS)有所区别,所以在安全领域叫做"XSS". XSS攻击,通常是指黑客通过"HTML注入"篡改了网页,插入了恶意的脚本,从而在用户浏览网页时,控制用户浏览器的一种攻击.在一开始,这种攻击的演示案例是跨域的,所以叫做"跨站脚本".但是发展到今天,是否跨域已经不再重要. 那么什么是XSS呢?看看下面的例子: 假设一个页面把用户输入参数直接输出到页面上: <?php $input = $_GET["param"]; echo "<div>".$input."</div>"; ?> 在正常情况下,用户向param提交的数据会展示到页面中,比如提交: http://www.a.com/test.php?param=这是一个测试! 但是如果提交一段HTML代码: http://www.a.com/test.php?param=<script>alert(/xss/)</script> 会发现,alert(/xss/)在当前页面执行了. 用户输入的Script脚本已经被写入页面中,而这显然是开发者所不希望看到的.上面这个例子,就是XSS的第一种类型: 反射型XSS . XSS根据效果的不同可以分成如下几类. 反射型XSS

Java如何获取当前类路径

谁说胖子不能爱 提交于 2019-12-06 06:49:42
1 .如何获得当前文件路径 常用: ( 1 ).Test. class .getResource( "" ) 得到的是当前类FileTest. class 文件的URI目录。不包括自己! ( 2 ).Test. class .getResource( "/" ) 得到的是当前的classpath的绝对URI路径。 ( 3 ).Thread.currentThread().getContextClassLoader().getResource( "" ) 得到的也是当前ClassPath的绝对URI路径。 ( 4 ).Test. class .getClassLoader().getResource( "" ) 得到的也是当前ClassPath的绝对URI路径。 ( 5 ).ClassLoader.getSystemResource( "" ) 得到的也是当前ClassPath的绝对URI路径。 尽量不要使用相对于System.getProperty( "user.dir" )当前用户目录的相对路径,后面可以看出得出结果五花八门。 ( 6 ) new File( "" ).getAbsolutePath()也可用。 2 .Web服务器 ( 1 ).Tomcat 在类中输出System.getProperty( "user.dir" );显示的是%Tomcat_Home%/bin (

脚本内调用交互程序传参的几种实现方式

老子叫甜甜 提交于 2019-12-06 04:56:14
1 windows echo param1>param.txt echo param2>>param.txt echo param3>>param.txt call interactive.cmd < param.txt pause 最简单的 (echo input1 && echo input2) | program.exe 2 linux /usr/bin/printf 'param1\nparam2\n' | mytestapp 参考文档 1 https://unix.stackexchange.com/questions/288765/using-a-bash-script-to-run-an-interactive-program 2 http://www.tldp.org/LDP/abs/html/here-docs.html call与start区别 3 https://stackoverflow.com/questions/2607856/several-ways-to-call-a-windows-batch-file-from-another-one-or-from-prompt-which Automatically answer to input prompt in windows batch 4 https://stackoverflow.com

第三方国内常用的快递物流单号查询API接口集成案例

﹥>﹥吖頭↗ 提交于 2019-12-06 03:31:42
适用于涉及经常发货、寄快递的人群、企业、电商网站、微信公众号平台等对接使用。支持国内外三百多家快递及物流公司的快递单号一站式查询。 使用说明: 1.快递鸟有现成的demo 2. http://www.kdniao.com/api-track 按照说明使用 3.如果有什么不清楚的地方,请到快递鸟的官网咨询 目前快递查询API接口有两种实现方式,一种是主动查询,一种是订阅接口推送数据。以快递鸟接口为例(接口对接需要接口秘钥,这里用的是测试的,不能够正式使用,可以到快递鸟官网申请,是免费申请秘钥的)最后会附有一个java的demo,更多demo语言可登陆快递鸟网站查询。 官方网址: http://www.kdniao.com 需要登录 ,申请一下 用户ID 和 API key,并进行实名认证开通自己相关的快递服务(有免费套餐和付费增值服务多种套餐可供选择) 接入流程: 1、认证类型、应用类型根据用户实际情况选择即可,接口返回数据与选择结果无关; 3.2、标记为*的为必填,要求上传清晰、jpg格式且小于2M的证件图片; 3.3、技术对接人信息为用户方对接工程师的信息; 3.4、如有其他疑问可进入官网加入商务合作群进行咨询。 认证成功后,进入“产品服务管理”,开通相关会员服务 (二)、接口描述/说明 (1)查询接口支持按照运单号查询(单个查询)。 (2)接口需要指定快递单号的快递公司编码

封装transform函数(设置和获取transform的属性和属性值)

独自空忆成欢 提交于 2019-12-06 03:07:10
(function (w) { /** * 设置或者获取元素的transform属性值 * @param node 要设置的元素 * @param param 变换属性: translate\scale\rotate.... * @param value 变换属性的值 (可选) 如果指定了,设置;没有指定,获取; */ function transformCss(node, param, value) { //如果第一次设置元素 if (node.transformData === undefined) { //给元素添加一个属性,用来保存元素的transform设置 node.transformData = {}; } if (arguments.length === 3) { //设置 transform 属性 //把transform属性添加到 tansformData里面 node.transformData[param] = value; //设置transform值的字符串 var transformStr = ''; //遍历 transformData for (var i in node.transformData) { switch (i) { case 'translate': case 'translateX': case 'translateY':

python-scp-上传文件到服务器

随声附和 提交于 2019-12-06 02:53:42
python中使用scp,将文件上传到服务器 1 def ssh_scp_put(ip, username, password, local_file, remote_path): 2 """ 3 scp上传文件 4 :param ip: 5 :param username: 6 :param password: 7 :param local_file: 8 :param remote_path: 9 :return: 10 """ 11 ssh = paramiko.SSHClient() 12 ssh.load_system_host_keys() 13 ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy()) 14 15 ssh.connect(hostname=str(ip), port=22, username=username, password=password) 16 17 scp = SCPClient(ssh.get_transport()) 18 scp.put(local_file, recursive=True, remote_path=remote_path) 19 scp.close() 来源: https://www.cnblogs.com/sunshine-blog/p/11959223

SpringBoot、ActiveMQ整合阿里大鱼-----短信服务

时间秒杀一切 提交于 2019-12-06 02:38:40
3. 短信微服务 3.1 需求分析 构建一个通用的短信发送服务(独立于优乐选的单独工程),接收 activeMQ 的消息( MAP 类型) 消息包括手机号( mobile )、短信模板号( template_code )、签名( sign_name )、参数字符串( param ) 3.2 代码实现 3.2.1 工程搭建 ( 1 )创建单独的一个工程 sms ( JAR 工程), POM 文件引入依赖 <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>1.4.0.RELEASE</version> </parent> <dependencies> <!-- springmvc --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <!--消息中间件activeMq--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId

微服务架构四大金刚利器

谁都会走 提交于 2019-12-06 02:38:32
概述 互联网应用发展到今天,从单体应用架构到SOA以及今天的微服务,随着微服务化的不断升级进化,服务和服务之间的稳定性变得越来越重要,分布式系统之所以复杂,主要原因是分布式系统需要考虑到网络的延时和不可靠,微服务很重要的一个特质就是需要保证服务幂等,保证幂等性很重要的前提需要分布式锁控制并发,同时缓存、降级和限流是保护微服务系统运行稳定性的三大利器。 随着业务不断的发展,按业务域的划分子系统越来越多,每个业务系统都需要缓存、限流、分布式锁、幂等工具组件,distributed-tools组件(暂未开源)正式包含了上述分布式系统所需要的基础功能组件。 distributed-tools组件基于tair、redis分别提供了2个springboot starter,使用起来非常简单。 以使用缓存使用redis为例,application.properties添加如下配置 redis.extend.hostName=127.0.0.1 redis.extend.port=6379 redis.extend.password=pwdcode redis.extend.timeout=10000 redis.idempotent.enabled=true 接下来的篇幅,重点会介绍一下缓存、限流、分布式锁、幂等的使用方式。 缓存 缓存的使用可以说无处不在,从应用请求的访问路径来看,用户user

Redis缓存的使用

。_饼干妹妹 提交于 2019-12-05 20:33:50
1、配置文件pom里面添加redis依赖 <!-- redis客户端:Jedis --> <dependency> <groupId>redis.clients</groupId> <artifactId>jedis</artifactId> <version>2.9.0</version> </dependency> 2、配置文件 1 <?xml version="1.0" encoding="UTF-8"?> 2 <beans xmlns="http://www.springframework.org/schema/beans" 3 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context" 4 xsi:schemaLocation="http://www.springframework.org/schema/beans 5 http://www.springframework.org/schema/beans/spring-beans.xsd 6 http://www.springframework.org/schema/context 7 http://www.springframework.org

Java中使用Calendar进行获取指定时间,使用SimpleDateFormat进行格式化转换

大憨熊 提交于 2019-12-05 20:17:26
java中使用Calendar获取指定的时间 public class DateTranslate { /** * 获取指定日期的间隔月份的第一天的日期 * @param date * @param sep * @return */ public static Date getMonthFirstDay(Date date, Integer sep) { Calendar cal = Calendar.getInstance(); cal.setTime(getThisWeekMonday(date)); cal.add(Calendar.MONTH, sep); cal.set(Calendar.DAY_OF_MONTH,1); return cal.getTime(); } /** * 获取上周一的日期 * @param date * @return */ public static Date getLastWeekMonday(Date date) { Calendar cal = Calendar.getInstance(); cal.setTime(getThisWeekMonday(date)); cal.add(Calendar.DATE, -7); return cal.getTime(); } /** * 获取昨天的时间 * @param date *