最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Django 如何從request中獲取前端數(shù)據(jù)

 更新時間:2021年04月23日 10:18:46   作者:何惜戈  
這篇文章主要介紹了Django從request中獲取前端數(shù)據(jù)的操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧

Django

###request

如果說 urls.py 是 Django 中前端頁面和后臺程序橋梁,那么 request 就是橋上負(fù)責(zé)運輸?shù)男∑?/p>

可以說后端接收到的來至前端的信息幾乎全部來自于requests中。

##request對象的屬性

request.META

request.MATE獲取的是一個標(biāo)準(zhǔn)的python字典。它包含了所有的HTTP請求信息

1 CONTENT_LENGTH —— 請求的正文的長度(是一個字符串)。

2 CONTENT_TYPE —— 請求的正文的MIME 類型。

3 HTTP_ACCEPT —— 響應(yīng)可接收的Content-Type。

4 HTTP_ACCEPT_ENCODING —— 響應(yīng)可接收的編碼。

5 HTTP_ACCEPT_LANGUAGE —— 響應(yīng)可接收的語言。

6 HTTP_HOST —— 客服端發(fā)送的HTTP Host 頭部。

7HTTP_REFERER —— Referring 頁面。

8 HTTP_USER_AGENT —— 客戶端的user-agent 字符串。

9 QUERY_STRING —— 單個字符串形式的查詢字符串(未解析過的形式)。

10 REMOTE_ADDR —— 客戶端的IP 地址。

11 REMOTE_HOST —— 客戶端的主機(jī)名。

12 REMOTE_USER —— 服務(wù)器認(rèn)證后的用戶。

13 REQUEST_METHOD —— 一個字符串,例如"GET" 或"POST"。

14 SERVER_NAME —— 服務(wù)器的主機(jī)名。

15 SE0RVER_PORT —— 服務(wù)器的端口(是一個字符串)

獲取請求的源主機(jī):HttpRequest.get_host()

request.scheme

請求的方式,即http或者是https

request.path

請求的路徑,這里的路徑是指相對路徑,也就是說一個登陸后臺頁面的請求:http://127.0.0.1:8000/admin 的路徑是 /admin

獲取完整路徑(包括參數(shù)):HttpRequest.get_full_path()

獲取絕對url: HttpRequest.bulid_absolute_uri(location) 此參數(shù)默認(rèn)為完整路徑

request.encoding

請求提交的數(shù)據(jù)的編碼方式

request.session

request.session 獲取的是一個類似于字典的對象,可以進(jìn)行讀取寫入操作,常用來保存一些數(shù)據(jù)來實現(xiàn)會話跟蹤技術(shù)。因為 HTTP 是一個無狀態(tài),不連續(xù)的協(xié)議。

如果想讓服務(wù)器記住當(dāng)前的訪問對象,就需要記錄請求者的一些信息來達(dá)到這個目的。

# 設(shè)置session
request.session["name"] = "root"
# 獲取session
name = request.sessin["name"]

?。?!說到這里需要提一下,django會默認(rèn)為session使用json序列化。json序列化只能序列化一些基本數(shù)據(jù)類型,如數(shù)字,字符串,列表等。

所以session不能直接存儲對象.可以簡單的在settings中添加 SESSION_SERIALIZER = "django.contrib.sessions.serializers.PickleSerializer"

request.COOKIES

與session類似,區(qū)別是cookies數(shù)據(jù)是保存在客戶端,session數(shù)據(jù)是保存在服務(wù)端。

相對而言session更安全,cookies在不同的瀏覽器上保存數(shù)據(jù)的大小限制也不同。但是,存在即合理。

cooike自有它的好處這里不多說。

# 設(shè)置cookies
response.set_cookie('name','root')
# 設(shè)置加密cookies
response.set_cookie('passsword','123456',salt='@#$!%^&')
# 獲取cookie
request.COOKIES.get("name")
# 獲取加密的cookie
request.get_signed_cookie("password",salt="@#$!%^&")

request.method

請求方式 POST/GET…

####下面正式開始獲取數(shù)據(jù)

就是在這里遇見了一些小問題,所以導(dǎo)致我寫這篇文章來記錄一下

request.body

請求的主體,返回的是一個字符串

request.data

請求的數(shù)據(jù)部分,返回的是一個字典對象(除此之外,與request.body是很類似的)

request.POST

獲取post方式表單中提交的數(shù)據(jù)

request.POST["username"]
request.POST.get("username")

request.GET

獲取get方式表單中或url提交的數(shù)據(jù)

request.GET["username"]
request.GET.get("username")

補(bǔ)充:django框架下,前端調(diào)取數(shù)據(jù)詳解

首先話癆一下,公司服務(wù)端使用的是python語言,而我們的后臺項目使用的django框架,前端調(diào)取數(shù)據(jù)也是基于框架輸出的。下面總結(jié)一下django框架下,前端調(diào)取數(shù)據(jù)的各種情況。

在前端頁面調(diào)取數(shù)據(jù),我們最常使用的方式總結(jié)為以下幾種:

數(shù)據(jù)直接輸出、for循環(huán)輸出、if判斷輸出、日期格式化。

下面我們針對每一種情況看看django是怎樣輸出的

1、數(shù)據(jù)直接輸出

{{ form.deliver_institution }}

2、for循環(huán)和if判斷結(jié)合使用

{% for item in form.newborn_hearing_screening %}
    {% if forloop.first %}
    {% else %}
        {{ item }} 
    {% endif %}
{% endfor %}

3、日期格式化

{{ my_date|date:"Y-m-d" }}

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。如有錯誤或未考慮完全的地方,望不吝賜教。

相關(guān)文章

  • Python?ftfy?包的使用案例解析

    Python?ftfy?包的使用案例解析

    Unicode是一種字符編碼標(biāo)準(zhǔn),用于表示文本中的字符,通過安裝 ftfy 軟件包,可以在 Python 中使用它提供的函數(shù)和工具來處理和修復(fù)文本中的 Unicode 問題,從而確保文本在各種應(yīng)用中的正確性和可靠性,這篇文章主要介紹了Python ftfy包的理解和使用,需要的朋友可以參考下
    2023-05-05
  • 關(guān)于Python元祖,列表,字典,集合的比較

    關(guān)于Python元祖,列表,字典,集合的比較

    下面小編就為大家?guī)硪黄P(guān)于Python元祖,列表,字典,集合的比較。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-01-01
  • Django 跨域請求處理的示例代碼

    Django 跨域請求處理的示例代碼

    本篇文章主要介紹了Django 跨域請求處理的示例代碼,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-05-05
  • 用python打印菱形的實操方法和代碼

    用python打印菱形的實操方法和代碼

    在本篇文章里小編給大家分享了關(guān)于用python打印菱形的實操方法和代碼,對此有需要的朋友們可以學(xué)習(xí)下。
    2019-06-06
  • Python包的版本切換和更新方式

    Python包的版本切換和更新方式

    這篇文章主要介紹了Python包的版本切換和更新方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-03-03
  • PyTorch平方根報錯的處理方案

    PyTorch平方根報錯的處理方案

    這篇文章主要介紹了PyTorch平方根報錯的處理方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-05-05
  • 基于Django ORM、一對一、一對多、多對多的全面講解

    基于Django ORM、一對一、一對多、多對多的全面講解

    今天小編就為大家分享一篇基于Django ORM、一對一、一對多、多對多的全面講解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-07-07
  • Python辦公自動化之自動化文本翻譯詳解

    Python辦公自動化之自動化文本翻譯詳解

    這篇文章主要為大家詳細(xì)介紹了Python辦公自動化中自動化文本翻譯的相關(guān)知識,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2024-01-01
  • Python實現(xiàn)打印http請求信息

    Python實現(xiàn)打印http請求信息

    這篇文章主要介紹了Python實現(xiàn)打印http請求信息方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-06-06
  • 詳解Pandas中stack()和unstack()的使用技巧

    詳解Pandas中stack()和unstack()的使用技巧

    當(dāng)你在處理包含某種序列(例如時間序列數(shù)據(jù))的變量的數(shù)據(jù)集時,數(shù)據(jù)通常需要進(jìn)行重塑。Pandas?提供了各種用于重塑?DataFrame?的內(nèi)置方法。其中,stack()?和?unstack()?是最流行的,本文總結(jié)了這兩個方法的7種使用技巧,需要的可以參考一下
    2022-03-03

最新評論

措勤县| 浠水县| 铁岭县| 康平县| 景宁| 宝山区| 莒南县| 湖南省| 睢宁县| 偏关县| 日喀则市| 文登市| 元氏县| 交城县| 商丘市| 洛扎县| 嘉兴市| 秭归县| 文化| 吉水县| 肇庆市| 西乡县| 车险| 凤翔县| 土默特左旗| 石城县| 图片| 岳池县| 淮滨县| 成安县| 无棣县| 兴业县| 镇平县| 建始县| 深水埗区| 故城县| 霸州市| 霍山县| 娄烦县| 重庆市| 宿迁市|