django中web页面的跳转方式

web的页面跳转方式

  • 转发(forward)
  • 重定向(redirect)

转发 render

服务器默认的跳转方式是转发

转发的特点:

  1. 地址栏地址不会发生改变
  2. 一次请求
  3. 可以携带数据到模板中
  4. 只能在服务器内部进行转发

重定向 redirect

重定向的特点:

  1. 地址栏会发生改变
  2. 2次请求
  3. 不能够携带数据到模板
  4. 重定向可以重定向到一个外部请求上(如百度)

重定向发送2次请求的原因:
当用户发送请求到后台处理数据的时候,后台如果使用 redirect 做页面跳转的话;
那么服务器会响应一个特殊的头信息,包含一个 Content-length=0, Location 和302的状态码;
那么浏览器接收到这个特殊的头信息后,会自动获取 Location 对应的值,并自动发送第二次请求

猜你喜欢

转载自www.cnblogs.com/leomessi10/p/11847927.html