大家好,我是 GO 語言的新手。
其實我一直沒有裝在電腦上面過,都只有透過 Heroku 讓寫好的東西去執行。
所以一直不曉得還有 GOPATH 這回事。
一直到我查詢 GO 語言要怎麼去接收別人 POST / GET 給自己的內容(REST?)
才遇到這個:martini
才發現還有 GOPATH 的配置。
但我在 Heroku 網頁上可以設定的都找過了,都沒看到類似的關鍵字。
有嘗試過直接抄寫
import "github.com/go-martini/martini"
然後 deloy 上去讓他執行,但編譯器又會擋。
編譯器會說 import "github.com/go-martini/martini"
裡面有東西不見了。
大概就是需要 GOPATH 的那些設定。
不知怎麼調整才可以調到能讓 Heroku 上面的 GO 文件能引用 martini 囧
啊,另外想請教一下。
下面這種寫法,有辦法修改後能取得 POST 後的伺服器回應值嗎?
func HttpPost(body , title_text, this_id string) error {
url := "https://某個要被 POST 的站外網址"
jsonStr := `{
"value1":"` + body + `",
"value2": "` + title_text + `",
"value3": "` + this_id + `"
}`
req, err := http.NewRequest(
"POST",
url,
bytes.NewBuffer([]byte(jsonStr)),
)
if err != nil {
log.Print(err)
return err
}
// 設定 head
req.Header.Set("Content-Type", "application/json")
client := &http.Client{}
resp, err := client.Do(req)
if err != nil {
log.Print(err)
return err
}
defer resp.Body.Close()
log.Print(err)
return err
}
這 function 就是負責傳三個參數寫成 JSON POST 到某個地方。
我是到處逛、到處參考拼拼湊湊起來,後來才終於會動 XD
但後來我突然想到,但對方的回應怎麼就消失了。
可是我也不知道要加在哪..........
有略懂 GO 語言的前輩可以幫忙指點一下嗎?
另外這種 POST 寫法是不是會有什麼缺點啊?有更推薦的寫法嗎?
然後 deloy 上去讓他執行,但編譯器又會擋。
編譯器會說 import "github.com/go-martini/martini" 裡面有東西不見了。
能把訊息貼出來看一下嗎?