2014-11-22 40 views
-3

我想問一下,如果我如何使用go運行URL。我有我想轉換爲Go的Ruby代碼。在Go中請求URL

url4 = "https://rest.nexmo.com/sms/xml?api_key=KEY&api_secret=SECRET&from=Aphelion&to=#{params[:user][:mobile_num]}&text=Test SMS" 
encoded_url3 = URI.encode(url4) 
url5= URI.parse(encoded_url3) 
req3 = Net::HTTP::Get.new(url5.to_s) 
res = Net::HTTP.start('rest.nexmo.com', 80) {|http| 
    http.request(req3) 
} 

謝謝

+4

「運行」一個URL是什麼意思? – 2014-11-22 05:28:42

+0

@JesseSielaff我認爲他的意思是「請求」而不是「運行」。我已經編輯了他的標題並刪除了'revel'標籤,因爲它被'go'標籤覆蓋。 – Brenden 2015-01-05 23:31:19

+1

我想也許一個更好的標題是「我如何在Go中獲取遠程內容?」但無關的參數和函數調用讓我感到困惑,我不想進行另一次編輯: - / – Nerdmaster 2015-01-16 22:35:38

回答

2

標準net/http包提供了執行HTTP請求的默認HTTP客戶端。

package main 

import (
     "fmt" 
     "io/ioutil" 
     "net/http" 
) 

func main() { 
     resp, err := http.Get("https://rest.nexmo.com/sms/xml") 
     if err != nil { 
       panic(err) 
     } 
     defer resp.Body.Close() 
     body, err := ioutil.ReadAll(resp.Body) 
     if err != nil { 
       panic(err) 
     } 
     fmt.Printf("%s", body) 
}