zoukankan      html  css  js  c++  java
  • 一百二十一:CMS系统之注册后跳转到上一个页面

    实现功能,访问测试页面的时候,跳转到注册页面,注册成功后跳转到测试页面

    使用参数:若是从其他地址跳转过来时,头部信息中会携带参数referrer,此参数为从从哪个地址跳转到当前地址的,若是直接从浏览器输入的地址,则不会携带此参数

    准备一个测试页面和接口

    <!DOCTYPE html>
    <html lang="en">
    <head>
    <meta charset="UTF-8">
    <title>Title</title>
    </head>
    <body>
    <a href="{{ url_for('front.signup') }}">点击注册</a>
    </body>
    </html>

    校验url是否合法的逻辑

    from urllib.parse import urlparse, urljoin
    from flask import request


    def is_safe_url(target):
    """ 判断url是否合法,是否在同一域名 """
    ref_url = urlparse(request.host_url)
    test_url = urlparse(urljoin(request.host_url, target))
    return test_url.scheme in ('http', 'https') and ref_url.netloc == test_url.netloc

    get请求里面判断,和是否加入referrer参数

    def get(self):
    referrer = request.referrer # 来到此接口的上一个接口
    if referrer and referrer != request.url and safeutils.is_safe_url(referrer):
    return render_template('front/front_signup.html', referrer=referrer)
    else:
    return render_template('front/front_signup.html')

    模板中加入此参数,并隐藏

    js在成功的回调函数中判断

    跳转注册:

  • 相关阅读:
    【转】Struts2 和 Spring MVC对比
    【转】JVM介绍
    linux内核阻塞IO
    linux并发concurrency控制
    内核延时
    linux中断编程
    (转)关于java.lang.UnsupportedClassVersionError解决方法总结
    (转) 使用jdk的xjc命令由schema文件生成相应的实体类
    TWS日志查看
    (转)IBM MQ 创建以及常见问题集锦
  • 原文地址:https://www.cnblogs.com/zhongyehai/p/11960996.html
Copyright © 2011-2022 走看看