在Golang中,返回JSON數據是非常方便和簡單的。要了解如何返回JSON,請參考以下示例:
package main
import (
"encoding/json"
"fmt"
"net/http"
)
type Person struct {
Name string
Age int
}
func main() {
http.HandleFunc("/person", handler)
http.ListenAndServe(":8080", nil)
}
func handler(w http.ResponseWriter, r *http.Request) {
w.Header().Set("Content-Type", "application/json")
p := Person{Name: "John Doe", Age: 30}
json.NewEncoder(w).Encode(p)
}
在上面的示例中,我們使用了在Go中內置的net/http
和encoding/json
包。在我們創建的Person
結構體中,我們定義了Name
和Age
兩個字段。
在handler
函數中,我們首先設置響應頭的Content-Type
為application/json
,以指示我們正在返回一個JSON響應。接下來,我們創建了一個Person
類型的實例,使用了Go內置的json.NewEncoder
函數將它編碼為JSON格式并且寫到了響應里。
這樣,我們就可以從瀏覽器中查看到JSON格式的響應,它應該看起來像這樣:
{"Name":"John Doe","Age":30}
這種方法可以在處理API請求時非常有用,而且在Go中非常容易和高效。