jspx

滑块验证码打码

有些话、适合烂在心里 提交于 2021-02-13 20:25:20
import requests #++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ # 滑块验证码打码 # 使用如下语句,可以用S代替requests发送get请求,如果请求的网址生成了cookie,则cookie会保存在S中,下次再用s请求会带上这个cookei s = requests.Session() # 找到一个接口,这个接口要返回gt 和challenge,请求他,获取challenge和gt source = s.get('http://gsxt.gzgs.gov.cn/registerValidate.jspx?t=1558493678554').json() print(source) gt = source['gt'] challenge = source['challenge'] # 将获取到的参数,传给极验,这里要包含用户名和密码,如果success是0,则后面要加上&model=1 second = s.get('http://jiyanapi.c2567.com/shibie?user=wangshang&pass=a706486a&return=json&ip=&gt='+gt+'&challenge='+challenge+'&model=1')

jsp和servlet的关系

不问归期 提交于 2021-01-30 10:55:47
看这篇文章之前先查看: JavaWeb开发之四:servlet技术 黑马程序员_轻松掌握JavaWeb开发之四Servlet开发 方立勋老师视频教程相当的经典 参看视频: https://www.bilibili.com/video/av14063556/?from=search&seid=5530945878428625444#page=2 传智播客 徐仕峰老师视频 jsp的原理: 结合右边给出的流程图: 当客户端浏览器向服务器请求一个 JSP 页面时,服务器收到该请求后,首先检查所请求的这个JSP 文件内容 ( 代码 ) 是否已经被更新,或者是否是 JSP 文件创建后的第一次被访问: --如果是,那么,这个 JSP 文件就会在服务器端的 JSP 引擎作用下转化为一个 Servlet 类的 Java 源代码文件。紧接着,这个 Servlet 类会在 Java 编译器的作用下被编译成一个字节码文件,并装载到 jvm 解释执行。剩下的就等同于 Servlet 的处理过程了。 --如果被请求的 JSP 文件内容 ( 代码 ) 没有被修改,那么它的处理过程也等同于一个 Servlet 的处理过程。即直接由服务器检索出与之对应的 Servlet 实例来处理。 需要注意的是,JSP 文件不是在服务器启动的时候转换成 Servlet 类的。而是在被客户端访问的时候才可能发生转换的 ( 如

上传"定时任务"获取系统权限

允我心安 提交于 2020-11-25 18:28:40
原文来自 SecIN社区 —作者:tkswifty 相关背景   文件上传是系统中比较常见的业务需求,例如上传头像、简历、报表等。但是如果在业务实现过程中没有考虑相关的安全问题(例如没有对用户上传的文件类型做校验或者校验不充分,导致用户可以上传恶意脚本到服务器)便会导致相关的风险。   Java文件类File以抽象的方式代表文件名和目录路径名。该类主要用于文件和目录的创建、文件的查找和文件的删除等。   一般新建文件是通过将给定路径名字符串转换成抽象路径名来创建一个新File实例: File file = new File("path")   使用File创建文件时,若路径处path写入…/…/穿越符号,是可以跨目录新建文件的:   看一个例子,下面是通过引入…/…/穿越符进行跨目录在上级目录Desktop创建文件:   结合该特点,结合特定的利用场景可以完成相关的权限获取操作。例如: linux写入定时任务、ssh公钥 windows写入自启动脚本、恶意dll … 挖掘过程   一般针对文件上传业务,主要判断是否有检查后缀名,同时要查看配置文件是否有设置白名单或者黑名单,如果没有的话,那么攻击者利用该缺陷上传类似webshell等恶意文件。   目标系统主要是通过commons-fileupload组件来实现文件上传,具体实现如下: DiskFileItemFactory

【转载】Java Web学习(十四) ---- JSP原理

自闭症网瘾萝莉.ら 提交于 2020-11-24 03:14:48
转载自:https://www.cnblogs.com/xdp-gacl/p/3764991.html 一、什么是JSP?   JSP全称是Java Server Pages,它和servle技术一样,都是SUN公司定义的一种用于开发动态web资源的技术。   JSP这门技术的最大的特点在于,写jsp就像在写html,但它相比html而言,html只能为用户提供静态数据,而Jsp技术允许在页面中嵌套java代码,为用户提供动态数据。 二、JSP原理 2.1、Web服务器是如何调用并执行一个jsp页面的?   浏览器向服务器发请求,不管访问的是什么资源,其实都是在访问Servlet,所以当访问一个jsp页面时,其实也是在访问一个Servlet, 服务器在执行jsp的时候,首先把jsp翻译成一个Servlet,所以我们访问jsp时,其实不是在访问jsp,而是在访问jsp翻译过后的那个Servl et,例如下面的代码: index.jsp 1 <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> 2 <% 3 String path = request.getContextPath(); 4 String basePath = request.getScheme()+"://"+request

servlet的url-pattern匹配规则

点点圈 提交于 2020-10-21 18:01:53
  首先需要明确几容易混淆的规则: servlet容器中的匹配规则既不是简单的通配,也不是正则表达式,而是特定的规则。所以不要用通配符或者正则表达式的匹配规则来看待servlet的url-pattern。 Servlet 2.5开始,一个servlet可以使用多个url-pattern规则,<servlet-mapping>标签声明了与该servlet相应的匹配规则,每个<url-pattern>标签代表1个匹配规则; 当servlet容器接收到浏览器发起的一个url请求后,容器会用url减去当前应用的上下文路径,以剩余的字符串作为servlet映射,假如url是http://localhost:8080/appDemo/index.html,其应用上下文是appDemo,容器会将http://localhost:8080/appDemo去掉,用剩下的/index.html部分拿来做servlet的映射匹配 url-pattern映射匹配过程是有优先顺序的 而且当有一个servlet匹配成功以后,就不会去理会剩下的servlet了。 一、四种匹配规则 1 精确匹配    <url-pattern>中配置的项必须与url完全精确匹配。 < servlet-mapping > < servlet-name > MyServlet </ servlet-name > < url

“for” cycle in JSF

青春壹個敷衍的年華 提交于 2020-01-24 02:53:05
问题 I simply need to perform a very basic for cycle in JSF/ICEFaces, basically rendering column numbers Something like the following pseudo-code for(int i=0; i<max; i++) { <td>#{i}</td> } the <c:forEach> tag iterates over collections, but I don't want to make my backing bean more complex returning a stupid collection of integers. Do you know a shorter and smarter way? Thank you 回答1: The <ui:repeat> tag is what you should really use. The JSTL tags operate outside of the JSF Lifecycle. Cay Horstman

How to output <option selected=“true”> from JSPX?

ぐ巨炮叔叔 提交于 2020-01-13 10:07:16
问题 A few html tags interpret "any" value of a give attribute as "true" -> option tags come to mind. I frequently end up doing something like this: <c:choose> <c:when test="${isSelected}"/> <option selected="true">Opt1</option> </c:when> <c:otherwise/> <option>Opt1</option> </c:otherwise> </c:choose> I know I can declare a custom to encapslate this behaviour but that also gets pretty ugly, unless I code it in java. Is there a smarter way to do this ? 回答1: One way to approach this would be to use

How to output <option selected=“true”> from JSPX?

倾然丶 夕夏残阳落幕 提交于 2020-01-13 10:07:09
问题 A few html tags interpret "any" value of a give attribute as "true" -> option tags come to mind. I frequently end up doing something like this: <c:choose> <c:when test="${isSelected}"/> <option selected="true">Opt1</option> </c:when> <c:otherwise/> <option>Opt1</option> </c:otherwise> </c:choose> I know I can declare a custom to encapslate this behaviour but that also gets pretty ugly, unless I code it in java. Is there a smarter way to do this ? 回答1: One way to approach this would be to use

How to call javascript function from tag lib's?

我们两清 提交于 2020-01-06 14:07:00
问题 Well, I have a question regarding javascript, how to call a js function from jsp or jspx files. on my jspx page I have a loop which adds data to a table, here is the code sample <c:forEach items="${loadList}" var="load"> <tr> <td> <nobr><c:out value="${load}"/></nobr> </td> </tr> </c:forEach> Here the line no 3 does a c:out on the load var which prints as 55.959090909090904 118.94545454545454 133.46818181818182 19.727272727272727 etc values. So I have written a js function to round of this

How to call javascript function from tag lib's?

冷暖自知 提交于 2020-01-06 14:05:38
问题 Well, I have a question regarding javascript, how to call a js function from jsp or jspx files. on my jspx page I have a loop which adds data to a table, here is the code sample <c:forEach items="${loadList}" var="load"> <tr> <td> <nobr><c:out value="${load}"/></nobr> </td> </tr> </c:forEach> Here the line no 3 does a c:out on the load var which prints as 55.959090909090904 118.94545454545454 133.46818181818182 19.727272727272727 etc values. So I have written a js function to round of this