服务器端

form表单中method的get和post区别

我的未来我决定 提交于 2019-12-25 03:26:58
一、问题的提出 <form action ="getPostServlet/getPost.do?param4=param4" method="get" > <input type="hidden" name="param1" value="param1"> <input type="hidden" name="param2" value="param2"> <input type="text" name="param3" value="param3" readonly> <input type="submit" name=" button 1" value="submit"> </form> 注意到表单中action:getPostServlet/getPost.do?param4=param4 这个action带有一个参数param4, 如果用get方法提交,后台无法接收到这个参数; 如果用post方法提交,后台就可以接收到这个参数。 问题原因的简单解释: 用get方法提交的url显示如下: http:// localhost /mywebapp/getPostServlet/getPost.do?pram1=param1&pram2=param2&pram3=param3&button1=submit也就是说 method为get时action自己后边带的参数列表会被忽视 ,

Action(8):Error -27728:Step download timeout(120 seconds)has expired when downloading

痴心易碎 提交于 2019-12-24 17:58:31
Action(8):Error -27728:Step download timeout(120 seconds)has expired when downloading 出现如下图所示对话框上的错误信息时 场景运行时报错: 1. 2. 解决方法是: 在Vuser Generator中的Vuser--->Run-Time Settings...---->Internet Protocol--->Preferences----> HTTP-request connect timeout (sec)和 HTTP-request receive timeout (sec) 分别设置1000 Step download timeout (sec) 设置10000即可解决 解决方法: 是超时的意思,不一定是代码的问题,可能是负载比较大,服务器的响应超过了120秒,就汇报这个错误,解决方法如下: 1、 修改run time setting中的请求超时时间,默认120,你改大一些,其中有三项的参数可以一次都修改了, HTTP-request connect timeout, HTTP-request receieve timeout, Step download timeout,分别建议修改为600、600、5000;run time

轮询和长轮询的优缺点

好久不见. 提交于 2019-12-24 11:28:29
在网上查了一下资料,发现轮询和长轮询还有不同的定义: 轮询 :客户端定时向服务器发送Ajax请求,服务器接到请求后马上返回响应信息并关闭连接。 优点:后端程序编写比较容易。 缺点:请求中有大半是无用,浪费带宽和服务器资源。 实例:适于小型应用。 长轮询 :客户端向服务器发送Ajax请求,服务器接到请求后hold住连接,直到有新消息才返回响应信息并关闭连接,客户端处理完响应信息后再向服务器发送新的请求。 优点:在无消息的情况下不会频繁的请求。 缺点:服务器hold连接会消耗资源。 实例:WebQQ、Hi网页版、Facebook IM。 另外,对于长连接和socket连接也有区分: 长连接 :在页面里嵌入一个隐蔵iframe,将这个隐蔵iframe的src属性设为对一个长连接的请求,服务器端就能源源不断地往客户端输入数据。 优点:消息即时到达,不发无用请求。 缺点:服务器维护一个长连接会增加开销。 实例:Gmail聊天 Flash Socket :在页面中内嵌入一个使用了Socket类的 Flash 程序JavaScript通过调用此Flash程序提供的Socket接口与服务器端的Socket接口进行通信,JavaScript在收到服务器端传送的信息后控制页面的显示。 优点:实现真正的即时通信,而不是伪即时。 缺点:客户端必须安装Flash插件;非HTTP协议,无法自动穿越防火墙。

NFS服务器的工作原理

时间秒杀一切 提交于 2019-12-24 01:17:42
http://cn.linux.vbird.org/linux_server/0330nfs.php#What_NFS_NFS 1. NFS NFS是分布式计算机系统的一个组成部分,可实现在异构网络上共享和装配远程文件系统。其最大功能是可以通过网络让不同操作系统的计算机可以共享数据,所以也可以将其看做是一台文件服务器。 客户端PC可以挂在NFS服务器所提供的目录并且挂载之后这个目录看起来如同本地的磁盘分区一样,可以使用cp、cd、mv、rm 及 df 等与磁盘相关的命令。NFS 有属于自己的协议与使用的端口号,但是在传送资料或者其他相关信息的时候,NFS 服务器 使用一个称为“远程过程调用”(Remote Procedure Call,RPC)的协议来协助 NFS 服务器本身的运行。 2. RPC RPC最主要的功能就是指定每个NFS功能所对应的port number, 并且回报给客户端,让客户端可以连接到正确的端口上去。当服务器在启动NFS时会随机取用数个端口,并主动向RPC注册,因此RPC可以知道每个端口对应的NFS功能,然后RPC是固定使用port 111来监听客户端的需求并回报客户端正确的端口。 所以你要注意,要启动NFS之前,RPC就要先启动了,否则NFS会无法向RPC注册。另外,RPC若重新启动时,原本注册的数据会不见,因此RPC重新启动后

使用readLine()方法遇到的坑

时光怂恿深爱的人放手 提交于 2019-12-24 00:10:37
程序很简单,客户段从控制台读取用户输入,然后发送至服务器端,主要代码如下 服务端代码: 客户端代码: 结果运行的时候,当开启服务端和客户端后,在客户端的控制台 键盘输入 内容,服务端却没有显示内容 原因: 1. 原来readLine()方法在进行读取一行时,只有遇到回车(\r)或者换行符(\n)才会返回读取结果,这就是“读取一行的意思”,重要的是readLine()返回的读取内容中并不包含换行符或者回车符; 2. 由于在客户端使用的readLine()来读取用户输入,所以当用户按下回车键是,readLine() 返回读取内容, 但此时返回的内容并不包含换行符(查看readLine()源码,会将\r,\n或者\r\n去除掉),而当在服务器端用readLine()再次读取时,由于读取的内容没有换行符,所以readLine()方法会一直阻塞等待换行符,这就是服务器端没有输出的原因。 解决方法: 在客户端每次输入回车后,手动给输入内容加入"\n"或"\r",再写入服务器; 注意: 1、误以为readLine()是读取到没有数据时就返回null(因为其它read方法当读到没有数据时返回-1),而实际上readLine()是一个阻塞函数,当没有数据读取时,就一直会阻塞在那,而不是返回null。没有数据时会阻塞,在数据流异常或断开时才会返回null 2、readLine(

UDP协议&TCP协议

余生颓废 提交于 2019-12-23 21:27:52
域名: DN (Domain name)是由一串由点分隔的名字组成的Internet上某一台计算机或计算机组的名称。 域名服务系统:DNS:它可以作为将域名和IP地址相互映射的一个分布式数据库。 协议: 应用层常见协议:   http协议:超文本传输语言。   ftp协议:文件传输协议   smtp协议:简单邮件传输协议  传输层的协议:   UDP协议:用户数据报协议,面向无连接的,简单不可靠的传输层协议。   面向无连接 通过数据报包来进行传输,每个数据报包大小不会超过64k. 不可靠的传输。 传输速度快。   TCP协议:传输控制协议,一种面向连接的,可靠的,基于字节流的传输层通信协议。   TCP协议传输过程:   要经过三次握手,确定通道的连接。   建立流的传输通道,进行数据的传输。   TCP传输协议的特点:   面向连接的 通过流通道进行数据的传输 可靠的连接 速度慢 UDP协议传输 代码示例: 发送端: 1 /** 2 3 1. 发送数据报包 4 ① 创建发送端的套接字对象。 5 ② 打包数据,用的 DatagramPacket 6 DatagramPacket(byte[] buf, int length, InetAddress address, int port) 7 ③ 发送 8 send(dp) 9 ④ 关闭资源 10 close 11 */ 12

总结数字签名实现身份验证

老子叫甜甜 提交于 2019-12-23 18:31:17
消息篡改和不可抵赖性 TCP协议确保数据能够正确发送到通信双方,加上数据加密算法保证数据安全传输,但是在HTTP应用中通信双方通常不清楚发送方的身份,尤其在客户端服务器通信下,通常一个服务器会处理多个客户端连接,结合前一篇日志讲到的密钥协商,对于服务器来说,它不需要知道客户端是谁,在建立连接,协商好密钥后,只要接收到的HTTP请求格式正确,数据解密无误后便会发送相应信息,对于客户端来说也是一样。表面上来看,客户端和服务器端只要数据能对应加密解密,正确,安全地发送到对方处,似乎就没什么问题。没错,数据加密保证了数据的机密性,消息验证码MAC算法保证了数据的完整性,接收方能够确保接收到的数据是发送方的原始数据,没有被篡改过,但是没有解决的问题是身份验证问题,无法确保和你通信的,发送数据的对方,是你正确的通信对象,这会出现的一个问题就是,第三方可以冒充你的通信方,给你发送消息。 在对称加密中,如果密钥泄露了,那么别人就可以使用你们的密钥进行加密解密,或者冒充通信方给你发消息,当你收到一条消息后,使用密钥解密,解出可读可理解的明文时,你可能就会误认为这条消息就是你的目标通信方发来的。在公开密钥算法下,公钥参数甚至可以是公开的,不需要对其做任何保护,在使用如DH密钥协商算法时,目的是协商出解密私钥,即使公钥,p,g等参数泄露了也没关系。公钥只是加密时采用到,这就导致了由于公钥公开

MySQL 架构

我的未来我决定 提交于 2019-12-23 06:54:18
原文: MySQL 架构 MySQL架构和结构分析 官方架构图: MySQL DB 各模块架构图如下: MySQL安装方式 MySQL初始化 简介:什么是事务; 事务: ACID : 事务确保了银行不会弄丢你的钱,而这种特性在应用逻辑设计中是很难实现的,甚至不可实现。一个ACID兼容的数据库服务器,要为事务处理大量的复杂工作确保ACID特性的实现,而这也许是用户未能察觉到的。 事务: ACID : A :原子性(Atomicity) : 一个事务必须被视为一个单独的内部”不可分“的工作单元,以确保整个事务要么全部执行,要么全部回滚。当一个事务具有原子性时,该事务绝对不会被部分执行,要么完全执行,要么根本就不执行。 C:一致性 (consistency): 数据库总是从一种一致性状态转换到另一种一致性状态。只要是最终事务没有被提交,任何事务处理过程中所做的数据改变,也不会影响到数据库的内容。 I:隔离性 (leolation) : 某个事务的结 果只有在完成之后才对其它事务可见 D:持久性(durability) : 一旦一 个事务提交,事务所做的数据改变是永久的。这意味着数据改变已被记录,即使系统崩溃,数据也不会因此丢失,持久性是个有点模糊的概念,因为实际上持久性也分为很多级别。 隔离: 隔离级别 read uncommitted : 读 未提交内容:在read

App上架应用市场,如何攻破安全过检难题

旧巷老猫 提交于 2019-12-22 16:47:28
App的安全过检与众所熟知的安全检测是两个完全不同的概念。首先App行业本身对App安全过检有一定的要求与规范,其次2017年6月1日正式实施的《中国网络安全法》中就曾要求App在渠道上线时进行实名认证,同时还要完成相应的安全检测。App这一上线过程就称为安全过检或者叫做安全候审。 App安全过检过程中遇到哪些问题 App在具体过检时所参考的一个细则就是《移动应用安全检测基本要求》,这个要求总共分为四大类,其中包括应用层、网络层、数据层以及服务器端。而安卓App本身的一些安全点,总共分为十个,分别是程序代码安全、程序代码防护、密码与安全策略、权限与界面安全、动态调试检测、SO注入检测、内存数据保护、隐私与存储安全、日志泄漏检测、通信数据安全等。 一、程序代码安全 第一块与用户信息收集要求相关。APP上架时对用户信息收集是有一定要求的,收集用户信息就明确相关的法律声明以及相关隐私政策。假如App没有获取用户隐私数据,但是使用了三方平台去收集,这个也要声明清楚App使用了哪个三方平台去收集用户数据,收集用户数据的目的等。 上图就是我们常见的一个APP展示页面,虽然大部分用户没有仔细阅读过以上信息,但是法律声明及隐私政策的展示是收集用户信息的硬性要求。 第二块与调用系统权限检测相关。调用系统权限需要遵循权限最小原则,同时App申请的权限要遵守用户的同意。 第三块是源代码的安全性

20182317 2019-2020-1 《数据结构与面向对象程序设计》实验四报告

筅森魡賤 提交于 2019-12-21 04:07:37
学号 2019-2020-1 《数据结构与面向对象程序设计》实验四报告 课程:《程序设计与数据结构》 班级: 1823 姓名: 彭衍泰 学号:20182317 实验教师:王志强 实验日期:2019年9月30日 必修/选修: 必修 1.实验内容 (一)Java Socket编程 1.学习蓝墨云上教材《Java和Android编程》“第16章 输入/输出 ”和“第22章 网络”,学习JavaSocket编程 2.结对编程。结对伙伴A编写客户端SocketClient.java,结对伙伴B编写服务器端。 3.截图加学号水印上传蓝墨云,代码push到码云,并撰写实验报告。 (二)Java和密码学 参考 http://www.cnblogs.com/rocedu/p/6683948.html 以结对的方式完成Java密码学相关内容的学习(帖子中所有代码和相关知识点需要学习)。提交学习成果码云链接和代表性成果截图,要有学号水印。 (三)编写有理数/复数计算器 结对编程,结对伙伴A编写有理数计算器。结对伙伴B编写复数计算器。截图加水印上传蓝墨云,代码push码云。 (四)远程有理数计算器 结对编程,结对伙伴A编程实现客户端,结果伙伴B实现服务器端。 客户端通过键盘输入一个有理数计算的公式(例如:1/4 + 1/6 = ),并把该公式以字符串的形式发送给伙伴B(服务器端)