golang api接收get,post請求讀取內容方法


1.接收字典:

var data map[string]interface{}
    if r.Method == "POST" {
        fmt.Println("method:", r.Method)
        res := r.ParseForm()
     # 從body里面讀出內容,golang的字典格式為map(字典)  a1, _ :
= ioutil.ReadAll(r.Body)
     # 將json格式的字符串解碼到相應的數據結構,marshal將數據編碼成json字符串 json.Unmarshal(a1,
&data) fmt.Println(res) fmt.Println(a1) log.Println(data["content"]) }

2.接收文件:

func sayhellohandler(w http.ResponseWriter, r *http.Request) {
    // r.ParseForm()
    if r.Method == "POST" {
        fmt.Println("method:", r.Method)
     # 讀取文件 formFile, header, err :
= r.FormFile("uid") if err != nil { log.Fatal(":", err) return } defer formFile.Close()
     # 創建文件 destFile, error :
= os.Create("D:/goproject/src/xuezhihao.com/study/go01/test1/11.jpg") if error != nil { log.Fatal(error) return } defer destFile.Close()
     # 復制文件 file, err :
= io.Copy(destFile, formFile) if err != nil { log.Fatal(":", err) return } fmt.Println(formFile) fmt.Println(header) fmt.Println(file) } } func main() { http.HandleFunc("/", sayhellohandler) log.Fatal(http.ListenAndServe(":2334", nil)) }

 3.從form-data中讀

    r.PostForm("id")
    r.PostFormValue("id")

返回response:

type Basejsonbean struct{

    Code int               `json:"Code"`
    Data interface{}     `json:"Data"`
    Message string       `json:"Message"`
}
# 定義一個方法返回response信息
func newbasejsonbean() *Basejsonbean {
    return &Basejsonbean{}
}
       # 實例化一個方法
    result := newbasejsonbean()
       # 把json格式轉成bytes
    bytes,_ := json.Marshal(result)
    // fmt.Println(bytes)
       # 返回字符串
    fmt.Fprint(w,string(bytes))

 

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM