iT邦幫忙

第 12 屆 iThome 鐵人賽

DAY 23
1
Modern Web

Iris這個在go語言上地表最快的網頁框架系列 第 23

iris的 query string

query string

在介紹完傳遞使用者資料手段之後要開始介紹使用者傳遞資訊到網頁伺服器的方法,在http協定中有兩種接收的方式,所以這篇先介紹其一query string。

本文同步放置於此

query string

query string 是使用者傳遞請求的方法之一,也是最基礎的請求方法,雖然基礎但是也是最簡單容易使用,所以這邊先介紹這個易懂且簡單使用的方法。

query string 是什麼

所謂的query string就是請求url之中?後面的參數,例如下面例子中的lastname和firstname

https://www.develop-note.com/api/custom?lastname=chang&firstname=kirai

在介紹完什麼是query string之後要開始介紹在iris中如何取得query string。

iris query string 處理的方法

在iris中有幾個處理query string的方法,之前有介紹一個,接下來再多介紹幾個,請看下列內容

  • URLParamExists(name string) bool
  • URLParamDefault(name string, def string) string
  • URLParam(name string) string
  • URLParamTrim(name string) string
  • URLParamInt(name string) (int, error)
  • URLParamIntDefault(name string, def int) int
  • URLParams() map[string]string

這邊稍作解釋,簡單說就是後綴詞有Default就是如果沒有該參數就會返還def這個值,還有URLParamInt就是將改名稱的query string轉換成int所以後綴有基礎類別名稱的方法就是轉換成該基礎類別,還有URLParamTrim是將其值裡面頭尾的空白都去除掉的值,最後URLParams就是取得所以query string轉換成map的結果。
結果講了那麼多這個query string到底該怎麼使用呢,請大家看看下列例子

 app.Get("/api/custom", func(ctx iris.Context) {
        firstname := ctx.URLParamDefault("firstname", "Guest")
        lastname := ctx.URLParam("lastname")

        ctx.Writef("Hello %s %s", firstname, lastname)
    })

結論

在介紹完query string之後讓讀者對於處理使用者的請求有一個基本的概念,不過query string有長度限制,而且有被窺看到的風險,所以下一篇介紹form post。


上一篇
iris的cookie
下一篇
iris 的 form post
系列文
Iris這個在go語言上地表最快的網頁框架30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言