码迷,mamicode.com
首页 > Web开发 > 详细

HTTP协议和防盗链

时间:2020-02-04 20:06:24      阅读:91      评论:0      收藏:0      [点我收藏+]

标签:二进制   auth   https   事务   提交   服务   config   request   进制   

http 协议:

  对浏览器客户端和服务器端之间数据传输的格式规范
  支持无连接和无状态
http 协议版本
  http1.0:当前浏览器客户端与服务器端建立连接之后,
       只能发送一次请求,一次请求之后连接关闭。
  http1.1:当前浏览器客户端与服务器端建立连接之后,
       可以在一次连接中发送多次请求。
tcp协议:
  以二进制文件格式传输
常见的请求方式:
   GET 、 POST、 HEAD、 TRACE、 PUT、 CONNECT 、DELETE
   POST:常用于表单提交,携带数据,数据封装在请求体中
   GET:url地址栏中显示数据;K=Y形式传输
常用的请求方式:
   GET 和 POST
同步:
  会发生阻塞HTTP建立连接后只能处理一次请求,会按顺序执行,当前请求没结束,不能再次发送请求
异步:
  不会等待服务器做出相应,发送完请求就结束
无连接:
  代表一次连接只能完成一次请求
无状态:
  不会记录事务,不会保存状态,Cookie记录
技术图片

 

 技术图片

 

 

 防盗链:

package com.wdksoft;

import java.io.IOException;

import javax.servlet.Filter;
import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.annotation.WebFilter;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

/**
 * 过滤图片请求
 * @author FLC
 *
 */
public class ImageFilter implements Filter{

	@Override
	public void destroy() {
		System.out.println("过滤器销毁");
		
	}

	@Override
	public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain)
			throws IOException, ServletException {
		System.out.println("dofilter");
		//获取到当前请求的连接地址和上一个发送请求的地址
		HttpServletRequest httprequest=(HttpServletRequest)request;
		HttpServletResponse httpresponse=(HttpServletResponse)response;
		
		//获取上一个发送请求的连接
		String referer = httprequest.getHeader("Referer");
		String serverName = httprequest.getServerName();
		System.out.println(referer+"\t"+serverName);
		if(referer==null||!referer.contains(serverName)) {
			request.getRequestDispatcher("/img/002.png").forward(request, response);
			return;
		}
		
		//放行
		chain.doFilter(request, response);
		
	}

	@Override
	public void init(FilterConfig arg0) throws ServletException {
		System.out.println("过滤器启动");
	}

}

  

 

HTTP协议和防盗链

标签:二进制   auth   https   事务   提交   服务   config   request   进制   

原文地址:https://www.cnblogs.com/F017/p/12260719.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!