##SMSとは
ショートメッセージサービスですね。
二段階認証や本人確認などで最近よく使われます。
package main
import (
"net/http"
"net/url"
"log"
"fmt"
)
func main(){
value := url.Values{}
value.Set("from","Nexmo")
value.Add("text","Hello from Nexmo dayoneeee")
value.Add("to",TO_NUMBER)
value.Add("api_key",API_KEY)
value.Add("api_secret",API_SECRET)
resp, err := http.PostForm("https://rest.nexmo.com/sms/json",value)
if err != nil{
log.Fatal(err)
}
buffer := make([]byte,1024)
respLen,_ := resp.Body.Read(buffer)
body := string(buffer[:respLen])
fmt.Println(body)
fmt.Println(resp.Status)
defer resp.Body.Close()
}
今回使ったAPIは特にエンコーディングする必要はなかったので
PostFormを使ってリクエストを作成しました。
API_KEYとFrom,Toが必須となっており、
URLのjsonをxmlなどに変えるとレスポンスで指定したものが返ってきます。
##おしまい
curlを使うとこんな感じだよというサンプルもあるので分かりやすかった。
詳しくはここに書いてある。Nexmo
curl -X "POST" "https://rest.nexmo.com/sms/json" \
-d "from=AcmeInc" \
-d "text=A text message sent using the Nexmo SMS API" \
-d "to=$TO_NUMBER" \
-d "api_key=$NEXMO_API_KEY" \
-d "api_secret=$NEXMO_API_SECRET"