本文实例讲述了python flask框架实现重定向功能。分享给大家供大家参考,具体如下:
flask 重定向:
from flask import *app = Flask(__name__)@app.route('/')def index(): return redirect(url_for('login'))@app.route('/login')def login(): return render_template('login.html')if __name__ == '__main__': app.run(host='0.0.0.0',port=6001,debug=True)[oracle@node01 ~]$ curl 192.168.137.1:6001<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN"><title>Redirecting...</title><h1>Redirecting...</h1><p>You should be redirected automatically to target URL: <a href="/login" rel="external nofollow" rel="external nofollow" >/login</a>. If not click the link.[oracle@node01 ~]$use Net::SMTP;use LWP::UserAgent;use HTTP::Cookies;use HTTP::Headers;use HTTP::Response;use Encode;use Switch;use File::Temp qw/tempfile/;use HTTP::Date qw(time2iso str2time time2iso time2isoz);use Data::Dumper;my $CurrTime = time2iso(time());my $ua = LWP::UserAgent->new;$ua->timeout(10);$ua->env_proxy;my $now = time();$ua->agent('Mozilla/5.0');my $cookie_jar = HTTP::Cookies->new( file => 'lwp_cookies.txt', autosave => 1, ignore_discard => 1);$ua->cookie_jar($cookie_jar);my $response = $ua->get("http://127.0.0.1:6001/");if ($response->is_success) { print encode("gbk",decode("utf8",Dumper($response))); $r=$response->content; $str=encode("gbk",decode("utf8","$r")); print $str."/n";}
perl 演示:
C:/Users/TLCB/Desktop/python/模块/flask>perl a1.pl$VAR1 = bless( { '_protocol' => 'HTTP/1.0', '_content' => '这是登陆页面', '_rc' => 200, '_headers' => bless( { 'client-date' => 'Fri, 01 Sep 2017 03:23:34 GMT', 'content-type' => 'text/html; charset=utf-8', 'client-response-num' => 1, 'date' => 'Fri, 01 Sep 2017 03:23:34 GMT', 'client-peer' => '127.0.0.1:6001', 'server' => 'Werkzeug/0.12.2 Python/2.7.10', 'content-length' => '18' }, 'HTTP::Headers' ), '_previous' => bless( { '_protocol' => 'HTTP/1.0', '_content' => '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN"><title>Redirecting...</title><h1>Redirecting...</h1><p>You should be redirected automatically to target URL: <a href="/login" rel="external nofollow" rel="external nofollow" >/login</a>. If not click the link.', '_rc' => '302', '_headers' => bless( { 'client-response-num' => 1, 'location' => 'http://127.0.0.1:6001/login', 'date' => 'Fri, 01 Sep 2017 03:23:34 GMT', 'client-peer' => '127.0.0.1:6001', 'content-length' => '219', 'client-date' => 'Fri, 01 Sep 2017 03:23:34 GMT', 'content-type' => 'text/html; charset=utf-8', 'server' => 'Werkzeug/0.12.2 Python/2.7.10', 'title' => 'Redirecting...' }, 'HTTP::Headers' ), '_msg' => 'FOUND', '_request' => bless( { '_content' => '', '_uri' => bless( do{/(my $o = 'http://127.0.0.1:6001/')}, 'U '_headers' => bless( { 'user-agent' => 'Mozilla/5.0' }, 'HTTP::Headers' ), '_method' => 'GET', '_uri_canonical' => $VAR1->{'_previous'}{'_request'}{'_uri'} }, 'HTTP::Request' ) }, 'HTTP::Response' ), '_msg' => 'OK', '_request' => bless( { '_protocol' => undef, '_content' => '', '_uri' => bless( do{/(my $o = 'http://127.0.0.1:6001/login')}, 'URI::http' ), '_headers' => bless( { 'user-agent' => 'Mozilla/5.0' }, 'HTTP::Headers' ), '_method' => 'GET', '_uri_canonical' => $VAR1->{'_request'}{'_uri'} }, 'HTTP::Request' ) }, 'HTTP::Response' );这是登陆页面C:/Users/TLCB/Desktop/python/模块/flask>
希望本文所述对大家基于Flask框架的Python程序设计有所帮助。
新闻热点
疑难解答
图片精选