beego中context的上下文模塊是什么

這篇文章將為大家詳細(xì)講解有關(guān)beego中context的上下文模塊是什么,文章內(nèi)容質(zhì)量較高,因此小編分享給大家做個(gè)參考,希望大家閱讀完這篇文章后對(duì)相關(guān)知識(shí)有一定的了解。

成都創(chuàng)新互聯(lián)公司網(wǎng)站建設(shè)公司是一家服務(wù)多年做網(wǎng)站建設(shè)策劃設(shè)計(jì)制作的公司,為廣大用戶提供了成都做網(wǎng)站、網(wǎng)站建設(shè),成都網(wǎng)站設(shè)計(jì),1元廣告,成都做網(wǎng)站選成都創(chuàng)新互聯(lián)公司,貼合企業(yè)需求,高性價(jià)比,滿足客戶不同層次的需求一站式服務(wù)歡迎致電。

針對(duì)  HTTP  請(qǐng)求中,request (Input)和 response (Output)的進(jìn)一步封裝。context 對(duì)象是對(duì) Input 和 Output 的封裝。

Input 對(duì)象

具體方法如下:

  • Protocol 獲取用戶請(qǐng)求的協(xié)議,例如 HTTP/1.0

  • Uri 用戶請(qǐng)求的 RequestURI,例如 /hi?id=1001

  • Url 請(qǐng)求的 URL 地址,例如 /hi

  • Site 請(qǐng)求的站點(diǎn)地址,scheme+doamin 的組合,例如 http://beego.me

  • Scheme 請(qǐng)求的 scheme,例如 "http" 或者 "https"

  • Domain 請(qǐng)求的域名,例如 beego.me

  • Host 請(qǐng)求的域名,和 domain 一樣

  • Method 請(qǐng)求的方法,標(biāo)準(zhǔn)的 HTTP 請(qǐng)求方法法,例如 GET 、 POST 等

  • Is 判斷是否是某一個(gè)方法,例如 Is("GET") 返回 true

  • IsAjax 判斷是否是 AJAX 請(qǐng)求,如果是返回 true,不是返回 false

  • IsSecure 判斷當(dāng)前請(qǐng)求是否 HTTPS 請(qǐng)求,是返回 true,否返回 false

  • IsWebsocket 判斷當(dāng)前請(qǐng)求是否 Websocket 請(qǐng)求,如果是返回 true,否返回 false

  • IsUpload 判斷當(dāng)前請(qǐng)求是否有文件上傳,有返回 true,否返回 false

  • IP 返回請(qǐng)求用戶的 IP,如果用戶通過代理,一層一層剝離獲取真實(shí)的 IP

  • Proxy 返回用戶代理請(qǐng)求的所有 IP

  • Refer 返回請(qǐng)求的 refer 信息

  • SubDomains 返回請(qǐng)求域名的根域名,例如請(qǐng)求是 blog.beego.me ,那么調(diào)用該函數(shù)返回 beego.me

  • Port 返回請(qǐng)求的端口,例如返回 8080

  • UserAgent 返回請(qǐng)求的 UserAgent ,例如 Mozilla/5.0 (Macintosh; Intel Mac OSX 10_9_0) AppleWebKit/537.36 (KHTML, like Gecko)Chrome/31.0.1650.57 Safari/537.36

  • Param 在路由設(shè)置的時(shí)候可以設(shè)置參數(shù),這個(gè)是用來獲取那些參數(shù)的,例如Param(":id") ,返回12

  • Query 該函數(shù)返回 Get 請(qǐng)求和 Post 請(qǐng)求中的所有數(shù)據(jù),和 PHP 中$_REQUEST 類似

  • Header 返回相應(yīng)的 header 信息,例如 Header("Accept-Language") ,就返回請(qǐng)求頭中對(duì)應(yīng)的信息 zh-CN,zh;q=0.8,en;q=0.6

  • Cookie 返回請(qǐng)求中的 cookie 數(shù)據(jù),例如 Cookie("username") ,就可以獲取請(qǐng)求頭中攜帶的 cookie 信息中 username 對(duì)應(yīng)的值

  • Session session 是用戶可以初始化的信息,默認(rèn)采?用了 beego 的 session 模塊中的 Session 對(duì)象,用來獲取存儲(chǔ)在服務(wù)器端中的數(shù)據(jù)。

  • Body 返回請(qǐng)求 Body 中數(shù)據(jù),例如 API 應(yīng)用中,很多用戶直接發(fā)送 json 數(shù)據(jù)包,那么通過 Query 這種函數(shù)無法獲取數(shù)據(jù),就必須通過該函數(shù)獲取數(shù)據(jù)。該函數(shù)已經(jīng)beego1.5版本之后刪除,目前可以通過RequestBody獲取數(shù)據(jù)。

  • GetData 用來獲取 Input 中 Data 中的數(shù)據(jù)

  • SetData 用來設(shè)置 Input 中 Data 的值,上面 GetData 和這個(gè)函數(shù)都是用來方便用戶在 Filter 中傳遞數(shù)據(jù)到 Controller 中來執(zhí)行

Output 對(duì)象

Output 是針對(duì) Response 的封裝,里面提供了很多方便的用法:

  • Header 設(shè)置輸出的 header 信息,例如 Header("Server","beego")

  • Body 設(shè)置輸出的內(nèi)容信息,例如 Body([]byte("astaxie"))

  • Cookie 設(shè)置輸出的 cookie 信息,例如Cookie("sessionID","beegoSessionID")

  • Json 把 Data 格式化為 Json,然后調(diào)用 Body 輸出數(shù)據(jù)

  • Jsonp 把 Data 格式化為 Jsonp,然后調(diào)用 Body 輸出數(shù)據(jù)

  • Xml 把 Data 格式化為 Xml,然后調(diào)用 Body 輸出數(shù)據(jù)

  • Download 把 file 路徑傳遞進(jìn)來,然后輸出文件給用戶

  • ContentType 設(shè)置輸出的 ContentType

  • SetStatus 設(shè)置輸出的 status

  • Session 設(shè)置在服務(wù)器端保存的值,例如 Session("username","astaxie") ,這樣用戶就可以在下次使用的時(shí)候讀取

  • IsCachable 根據(jù) status 判斷,是否為緩存類的狀態(tài)

  • IsEmpty 根據(jù) status 判斷,是否為輸出內(nèi)容為空的狀態(tài)

  • IsOk 根據(jù) status 判斷,是否為 200 的狀態(tài)

  • IsSuccessful 根據(jù) status 判斷,是否為正常的狀態(tài)

  • IsRedirect 根據(jù) status 判斷,是否為跳轉(zhuǎn)類的狀態(tài)

  • IsForbidden 根據(jù) status 判斷,是否為禁用類的狀態(tài)

  • IsNotFound 根據(jù) status 判斷,是否為找不到資源類的狀態(tài)

  • IsClientError 根據(jù) status 判斷,是否為請(qǐng)求客戶端錯(cuò)誤的狀態(tài)

  • IsServerError 根據(jù) status 判斷,是否為服務(wù)器端錯(cuò)誤的狀態(tài)

關(guān)于beego中context的上下文模塊是什么就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,可以學(xué)到更多知識(shí)。如果覺得文章不錯(cuò),可以把它分享出去讓更多的人看到。

名稱欄目:beego中context的上下文模塊是什么
鏈接地址:http://muchs.cn/article48/ghhpep.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供定制開發(fā)、網(wǎng)站改版、網(wǎng)站排名、網(wǎng)站收錄、網(wǎng)站策劃、Google

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

小程序開發(fā)