用户登陆界面如何组织参数输入及服务器对参数的处理

本文介绍了HTML表单中GET和POST方法的区别,包括界面参数输入、数据传递到服务器的处理方式。GET方法在URL中显示参数,安全性较低,适合查询操作;POST方法将数据隐藏,适用于提交敏感信息,如登录。POST方法还解决了GET可能出现的乱码问题,能传输大量数据,更适用于文件上传。总结中强调了POST方法在安全性、数据量和防止乱码方面的优势。
摘要由CSDN通过智能技术生成

1.界面如何组织参数输入

用户登陆界面我们可以使用form表单来实现,给出了以下代码

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Login</title>
</head>
<body>
	建议用f12看一下整个请求到响应的过程<br>
	<form action="login" method="post"> 
	用户名:<input type="text" name="username"> <br> 
	密 码:<input type="password" name="password"> <br> 
	<input type="submit" value="登录"> 
	</form>
</body>
</html>

这里我们设置了一个用户登陆界面。账号字段可以用简单文本域<input type="text"> 标签来设定,用户在表单中数入字母、数字等内容时,就会显示出来;密码字段通过标签<input type="password"> 来定义,密码字段字符不会明文显示,而是以星号或圆点替代。

我们可以看到运行页面的界面情况

代码中的method代表参数传入到服务器的方式,有post和get两种方法,不写默认为Get。

2.参数如何传到服务器上进行相应的处理

通过get或者posy方法参数传入服务器中,再通过request.getParameter () 取得通过容器的实现来取得通过类似post,get等方式传入的数据。我们加上下面的源代码进行理解

package servlet;

import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

public class LoginServlet extends HttpServlet {

	protected void doGet(HttpServletRequest request, HttpServletResponse response) 
			throws ServletException, IOException {
		//从请求中获取相应的参数
        String username = request.getParameter("username"); 
        String password = request.getParameter("password"); 
        
        //在控制台输出相应的参数
        System.out.println("username = " + username ); 
        System.out.println("password = " + password ); 
        
        //给出响应 
        response.setContentType("text/html"); 
        response.getWriter().println("Login Success!"); 
	}

	protected void doPost(HttpServletRequest request, HttpServletResponse response) 
			throws ServletException, IOException {
		doGet(request, response);
	}
}

使用Get方式提交数据,其参数在浏览器的地址栏的url中可见,所以隐私性安全性较差,且参数长度也是有限制的。

而对于Post方式,参数就会以form data的形式传递,浏览器会根据网页的meta标签中的content="text/html; charset=UTF-8"中指定的编码进行对表单中的数据进行编码,然后发给服务器,在服务器端的程序中我们可以通过request.setCharacterEncoding(“charset”)方式(JSP代码) 设置编码,然后通过request.getParameter获得正确的数据,编码方式是我们可以控制的。

下面是用get方法传入参数,参数的url就会被显示出来(用户登录密码):

 而使用Post方式,url不会显示出来

总结

Post方式优于Get方法的原因:

  • 更少的乱码问题。
  • 更加安全(数据不会出现在url中),从上面的实践就可以看出
  • Get传输的数据量小,这主要是因为受url长度限制;而Post可以传输大量的数据,所以在上传文件只能使用Post。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值