当前位置: 首页 > news >正文

企查查企业信息查询网站电子商务网站建设基本流程图

企查查企业信息查询网站,电子商务网站建设基本流程图,专业的南昌网站建设,简单的crm客户管理系统一、共同之处: cookie和session都是用来跟踪浏览器用户身份的会话方式。 二、工作原理: 1.Cookie的工作原理 (1)浏览器端第一次发送请求到服务器端 (2)服务器端创建Cookie,该Cookie中包含用户的…

一、共同之处:
cookie和session都是用来跟踪浏览器用户身份的会话方式。

二、工作原理:
1.Cookie的工作原理
(1)浏览器端第一次发送请求到服务器端
(2)服务器端创建Cookie,该Cookie中包含用户的信息,然后将该Cookie发送到浏览器端
(3)浏览器端再次访问服务器端时会携带服务器端创建的Cookie
(4)服务器端通过Cookie中携带的数据区分不同的用户
在这里插入图片描述
2.Session的工作原理
1)浏览器端第一次发送请求到服务器端,服务器端创建一个Session,同时会创建一个特殊的Cookie(name为JSESSIONID的固定值,value为session对象的ID),然后将该Cookie发送至浏览器端
(2)浏览器端发送第N(N>1)次请求到服务器端,浏览器端访问服务器端时就会携带该name为JSESSIONID的Cookie对象
(3)服务器端根据name为JSESSIONID的Cookie的value(sessionId),去查询Session对象,从而区分不同用户。

name为JSESSIONID的Cookie不存在(关闭或更换浏览器),返回1中重新去创建Session与特殊的Cookie
name为JSESSIONID的Cookie存在,根据value中的SessionId去寻找session对象
value为SessionId不存在**(Session对象默认存活30分钟)**,返回1中重新去创建Session与特殊的Cookie
value为SessionId存在,返回session对象
在这里插入图片描述
三、区别:

cookie数据保存在客户端,session数据保存在服务端。

session
简单的说,当你登陆一个网站的时候,如果web服务器端使用的是session,那么所有的数据都保存在服务器上,客户端每次请求服务器的时候会发送当前会话sessionid,服务器根据当前sessionid判断相应的用户数据标志,以确定用户是否登陆或具有某种权限。由于数据是存储在服务器上面,所以你不能伪造。

cookie
sessionid是服务器和客户端连接时候随机分配的,如果浏览器使用的是cookie,那么所有数据都保存在浏览器端,比如你登陆以后,服务器设置了cookie用户名,那么当你再次请求服务器的时候,浏览器会将用户名一块发送给服务器,这些变量有一定的特殊标记。服务器会解释为cookie变量,所以只要不关闭浏览器,那么cookie变量一直是有效的,所以能够保证长时间不掉线。

如果你能够截获某个用户的cookie变量,然后伪造一个数据包发送过去,那么服务器还是 认为你是合法的。所以,使用cookie被攻击的可能性比较大。

如果cookie设置了有效值,那么cookie会保存到客户端的硬盘上,下次在访问网站的时候,浏览器先检查有没有cookie,如果有的话,读取cookie,然后发送给服务器。

所以你在机器上面保存了某个论坛cookie,有效期是一年,如果有人入侵你的机器,将你的cookie拷走,放在他机器下面,那么他登陆该网站的时候就是用你的身份登陆的。当然,伪造的时候需要注意,直接copy cookie文件到 cookie目录,浏览器是不认的,他有一个index.dat文件,存储了 cookie文件的建立时间,以及是否有修改,所以你必须先要有该网站的 cookie文件,并且要从保证时间上骗过浏览器

两个都可以用来存私密的东西,session过期与否,取决于服务器的设定。cookie过期与否,可以在cookie生成的时候设置进去。

四、区别对比:
(1)cookie数据存放在客户的浏览器上,session数据放在服务器上
(2)cookie不是很安全,别人可以分析存放在本地的COOKIE并进行COOKIE欺骗,如果主要考虑到安全应当使用session
(3)session会在一定时间内保存在服务器上。当访问增多,会比较占用你服务器的性能,如果主要考虑到减轻服务器性能方面,应当使用COOKIE
(4)单个cookie在客户端的限制是3K,就是说一个站点在客户端存放的COOKIE不能3K。
(5)所以:将登陆信息等重要信息存放为SESSION;其他信息如果需要保留,可以放在COOKIE中

实现登录功能

package EnableUserLogin;import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpSession;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;@WebServlet("/index")
public class IndexServlet extends HttpServlet {@Overrideprotected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {resp.setContentType("text/html; charset=utf-8");// 1. 判定当前用户是否已经登陆HttpSession session = req.getSession(false);if (session == null) {// 用户没有登陆, 重定向到 login.htmlresp.sendRedirect("login.html");return;}// 2. 如果已经登陆, 则从 Session 中取出访问次数数据String userName = (String)session.getAttribute("username");String countString = (String)session.getAttribute("loginCount");int loginCount = Integer.parseInt(countString);loginCount += 1;session.setAttribute("loginCount", loginCount + "");// 3. 展示到页面上.StringBuilder html = new StringBuilder();html.append(String.format("<div>用户名: %s</div>", userName));html.append(String.format("<div>loginCount: %d</div>", loginCount));resp.getWriter().write(html.toString());}
}
package EnableUserLogin;import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpSession;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
@WebServlet("/login")
public class LoginServlet extends HttpServlet {@Overrideprotected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {resp.setContentType("text/html; charset=utf-8");// 1. 获取到用户提交的用户名和密码String username = req.getParameter("username");String password = req.getParameter("password");// 2. 判定用户名密码是否正确if (!username.equals("admin") || !password.equals("123")) {// 登陆失败resp.getWriter().write("登陆失败");return;}// 登陆成功System.out.println("登陆成功");// 设置 SessionHttpSession session = req.getSession(true);session.setAttribute("username", "admin");session.setAttribute("loginCount", "0");resp.sendRedirect("index");}
}
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Title</title>
</head>
<body><form action="login" method="POST"><input type="text" name="username"><input type="password" name="password"><input type="submit" value="提交"></form>
</body>
</html>
http://www.yayakq.cn/news/194593/

相关文章:

  • 有什么做服装的网站好wordpress调用文章id
  • 做网站用什么软件一个手机网站
  • 公司网站建设找谁网架网架厂家
  • 旅游电子商务网站建设情况唐山模板网站建设
  • 公众号平台网站开发响应式网页设计与实现
  • 网站开发流程说明网上哪个网站教做西点
  • 公司的网站建设是什么部门广东网站seo
  • 十大免费论文网站wordpress 文章 404
  • 展馆的科普网站建设外贸企业邮箱哪家好
  • 无锡市建设培训中心网站动漫网站开发设计思想
  • 做导购网站赚钱吗wordpress固定链接找不到
  • 举报网站建设公司广东东莞天气预报15天
  • 汉鼎网站建设网站没询盘怎么做推广
  • 会同县做网站网站服务器租用和托管
  • 网站全网建设莱芜做家纺的主要国际网站
  • 龙岗南联网站建设高端网站制作技术
  • 网站做全景图预览网站建设情况检查报告
  • 做平面的公司网站模块化网站建设 局域网
  • 开发者门户网站是什么意思开什么工作室最赚钱
  • wordpress 导航网站主题中文wordpress案例
  • SSC网站开发H5大型门户网站 代码
  • 网站推广需要域名迁移wordpress管理页面
  • 茂名网站制作公司什么是所见即所得的网页制作工具
  • 南宁网站建设找哪家公司大连网站建设哪家专业
  • 小公司网站建设费用wordpress安装空白页
  • 手机微信官方网站首页京润珍珠企业网站优化
  • 酒店网站的建设方案wordpress flash插件
  • 网站网页跳转西安的商城网站
  • 做那个男女的视频网站海门网站建设
  • 东营伟浩建设集团网站有什么好看的网站资源