go api json 輸出嘗試

來源:互聯網
上載者:User

標籤:mars   out   ...   type   胡潤百富榜   http   類型   highlight   mux   

package mainimport (   "fmt"   "net/http"   //"net/url"   "github.com/drone/routes"   "database/sql"   _ "github.com/go-sql-driver/mysql"   "encoding/json")var db = &sql.DB{}func init(){  var err interface{}db, err = sql.Open("mysql", "root:[email protected](localhost:3306)/mytest?charset=utf8")  if err!=nil{    fmt.Println("資料庫連接出錯")  }else{    fmt.Println("suc sql connect")  }}type BaseRes struct{  Code int  Msg string  Data interface{}}func (b BaseRes) sucSet(m string,c int) BaseRes{  b.Code=c  b.Msg=m  return b  //這裡要返回出去才能被外界訪問,因為這是一個閉包}type Article struct{  Title string  Author string  Time string  Content string}type ArticleTwo struct{  Id int  Title string  Content string}func testRoute(w http.ResponseWriter,r *http.Request){    var sid Article    sid.Title="第一女首富的最好時刻又來了"    sid.Author="周聰明"    sid.Time="2014-12-03"    sid.Content="十一年前的今天,當年的胡潤百富榜發布,49歲的張茵擁有財富270億元,成為中國第一位女首富,也是世界上最富有的女性白手起家者。當胡潤公布首富人名時,場下只有兩三"    var sendData BaseRes    sendData.Code=10000    sendData.Msg="success"    sendData.Data=sid    res,_:=json.Marshal(sendData)    fmt.Fprintln(w, string(res))}func testRouteTwo(w http.ResponseWriter,r *http.Request){    rows, _ := db.Query("select * from article")    var a ArticleTwo    var arr []ArticleTwo //定義一個arr的數組用來儲存ArticleTwo類型的資料    for rows.Next() {      rows.Scan(&a.Title, &a.Content, &a.Id) //儲存ArticleTwo類型的資料      arr=append(arr,a) //迴圈加入數組中    }    var b BaseRes    b.Data=arr    b=b.sucSet("suc",10000)    res,_:=json.Marshal(b)    fmt.Fprintln(w, string(res))}func main() {   fmt.Println("正在啟動WEB服務...")   var mux *routes.RouteMux = routes.New()   mux.Get("/",testRoute)   mux.Get("/two",testRouteTwo)   //http.Handle("/", mux)   http.ListenAndServe(":8088", mux)   fmt.Println("服務已停止")}

  

go api json 輸出嘗試

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.