欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

如何通過Flask的request對象獲取url

 更新時間:2024年07月08日 16:10:34   作者:Thomas_Lean  
這篇文章主要介紹了如何通過Flask的request對象獲取url問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教

通過Flask的request對象獲取url

flask開發(fā)過程中,有時候需要獲取當(dāng)前請求url的相關(guān)數(shù)據(jù),那么可以用以下方式獲取url?。?/p>

flask測試請求地址:http://127.0.0.1:5000/main/index?page=10

實例如下:

from flask import request
@main.route('/main/index', methods=['GET', 'POST'])
@login_required
def index():
	host_url = request.host_url

request更多方法

  • 1.request.path: /main/index
  • 2.request.host: 127.0.0.1:5000
  • 3.request.host_url: http://127.0.0.1:5000/
  • 4.request.full_path: /main/index?page=10
  • 5.request.script_root:
  • 6.request.url: http://127.0.0.1:5000/main/index?page=10
  • 7.request.base_url: http://127.0.0.1:5000/main/index
  • 8.request.url_root: http://127.0.0.1:5000/

request對象、response對象、session對象

request對象

  • 作用:獲取用戶提供的信息
  • 語法:是實現(xiàn)了ServletRequest接口類的一個實例

使用表單向服務(wù)器的某個JSP頁面提交信息

常用方法:

  • 設(shè)置編碼方式:例如(用來防止?jié)h字亂碼)
request.setCharacterEncoding(“gb2312”);

同效果:

String str = request.getParameter(“message”);
byte[] b = str.getBytes(“ISO-8859-1”);
Str = new String(b);
  • getProtocol():獲取提交信息使用的協(xié)議
  • getServletPath():獲取請求的JSP頁面文件的目錄
  • getContextPath():獲取請求的當(dāng)前的web服務(wù)目錄
  • getContentLength():獲取提交信息的長度 
  • getMethod():獲取提交信息的方法,例如:post、get
  • getHeader(s : String):獲取http頭文件中由參數(shù)s指定的頭名字的值。

s可以為:accept,accept-language,content-type,accept-encoding,user-agent,host,content-length,connection,cookie

  • getHeaderNames():獲取頭名字的枚舉類型
  • getHeaders(s : String):獲取頭文件中指定頭名字的全部值的一個枚舉
  • getRemoteAdr():獲取用戶的IP地址
  • getRemoteHost():獲取用戶的用戶機(jī)名
  • getServletPort():獲取服務(wù)器端號
  • GetParameterNames():獲取提交信息中name參數(shù)值的一個枚舉

response對象

作用:對用戶的請求作出動態(tài)響應(yīng),向用戶端發(fā)送數(shù)據(jù)

例如 :page指令為contentType指定一個值來決定響應(yīng)MIME類型。

若想要動態(tài)的改變這個值可以用:

response.setContentType(s : String);   

s的取值可以是:text/jtml; text/plain; image/gif; image/x-xbitmap; image/jpeg; image/pjpeg; application/x-shockwave-flash;application/vnd.ms-powerpoint; application/vnd-ms-execel; application/msword等

請求和響應(yīng)都包含一些方法頭

使用:

response.addHeader(head : String, value : String);
或
response.setHeader(head : String, value : String);

動態(tài)的添加新的響應(yīng)和頭的值

例如:

response.setHeader(“Reflesh”, “5”);

表示每5秒刷新一次頁面response重定向

  • 語法:response.setRedirect(url : URL); response狀態(tài)行
  • 語法:response.setStatus(n : int);

session對象

說明:由Tomcat負(fù)責(zé)創(chuàng)建對象,用于存儲用戶訪問服務(wù)器頁面期間提交的各種信息。每個對象都會被分配一個String類型的ID號(可以使用session.getId();獲?。?,存放在Cookie中,同一個用戶在不同的文本服務(wù)目錄中session互不相同。

實現(xiàn)session對象的唯一性:一般的用戶端支持了Cookie,就已經(jīng)實現(xiàn)了對象的唯一性。

如果沒有支持,那就可以通過重寫URL來實現(xiàn)session對象的唯一性。調(diào)用encodeURL(id : String)或encodeRedirectURL(id : String)方法,向新的URL中添加參數(shù),將session對象的id傳遞過去。

  • setAttribute(key : String, obj : Object) : void  存儲對象,添加索引
  • getAttribute(key : String) : Object  使用索引,獲取對象
  • getAttributeNmaes() : Enumeration 產(chǎn)生一個枚舉對象,可以使用nextElems() 遍歷session 中的各個對象對應(yīng)的關(guān)鍵字
  • removeAttribute(key : String) : void  移除關(guān)鍵字對應(yīng)的對象
  • getCreationTime() : long  獲取session創(chuàng)建的時間(毫秒)
  • getLastAccessedTime() : long   session最后一次被/操作的時間(毫秒)
  • getMaxInactiveInterval() : int   獲取最長發(fā)呆時間(秒)
  • setMaxInactiveInterval(interval : int)  設(shè)置最長的發(fā)呆時間(秒)
  • isNew() : boolean  判斷session是否是最新創(chuàng)建的
  • invalidate() : void   使session無效

session的生存周期:

1.調(diào)用invalidate()方法,使session無效

2.達(dá)到設(shè)置的最長發(fā)呆時間

3.關(guān)閉服務(wù)器

總結(jié)

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • CentOS6.5設(shè)置Django開發(fā)環(huán)境

    CentOS6.5設(shè)置Django開發(fā)環(huán)境

    這篇文章主要為大家詳細(xì)介紹了CentOS6.5設(shè)置Django開發(fā)環(huán)境,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2016-10-10
  • Pandas?Query方法使用深度總結(jié)

    Pandas?Query方法使用深度總結(jié)

    大多數(shù)Pandas用戶都熟悉iloc[]和loc[]索引器方法,用于檢索行和列。但是隨著檢索數(shù)據(jù)的規(guī)則變得越來越復(fù)雜,這些方法也隨之變得更加復(fù)雜而臃腫。本文將展示如何使用?query()?方法對數(shù)據(jù)框執(zhí)行查詢,感興趣的可以了解一下
    2022-07-07
  • python基礎(chǔ)之輸入與輸出

    python基礎(chǔ)之輸入與輸出

    這篇文章主要介紹了python的輸入與輸出,實例分析了Python中返回一個返回值與多個返回值的方法,需要的朋友可以參考下
    2021-10-10
  • Python?迭代器和生成器概念及場景分析

    Python?迭代器和生成器概念及場景分析

    yield 是 Python 中實現(xiàn)惰性計算和協(xié)程的核心工具,結(jié)合 send()、throw()、close() 等方法,能夠構(gòu)建高效、靈活的數(shù)據(jù)流和控制流模型,這篇文章主要介紹了Python?迭代器和生成器概念,需要的朋友可以參考下
    2025-04-04
  • python學(xué)習(xí)實操案例(三)

    python學(xué)習(xí)實操案例(三)

    這篇文章主要介紹了python學(xué)習(xí)實操案例,循環(huán)輸出26個字母對應(yīng)的ASCII碼值、模擬用戶登錄、猜數(shù)游戲練習(xí)等案例,需要的小伙伴可以參考一下,希望對你有一定的幫助
    2022-02-02
  • Python函數(shù)元數(shù)據(jù)實現(xiàn)為一個參數(shù)指定多個類型

    Python函數(shù)元數(shù)據(jù)實現(xiàn)為一個參數(shù)指定多個類型

    這篇文章主要介紹了Python函數(shù)元數(shù)據(jù)實現(xiàn)為一個參數(shù)指定多個類型方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-02-02
  • numpy求解線性代數(shù)相關(guān)問題

    numpy求解線性代數(shù)相關(guān)問題

    本文主要介紹了numpy求解線性代數(shù)相關(guān)問題,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2025-01-01
  • pytorch中retain_graph==True的作用說明

    pytorch中retain_graph==True的作用說明

    這篇文章主要介紹了pytorch中retain_graph==True的作用說明,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-02-02
  • 利用Python來實現(xiàn)阿姆斯特朗數(shù)的檢查實例

    利用Python來實現(xiàn)阿姆斯特朗數(shù)的檢查實例

    這篇文章主要給大家介紹了關(guān)于利用Python來實現(xiàn)阿姆斯特朗數(shù)的檢查的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-03-03
  • Python中的迭代器與生成器使用及說明

    Python中的迭代器與生成器使用及說明

    這篇文章主要介紹了Python中的迭代器與生成器使用及說明,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-12-12

最新評論