Subscribed unsubscribe Subscribe Subscribe

OngaLog

最近GOが楽しくて、

Go言語を使ってLineBotを作成してみる

Go

AppEngineとGo言語でLineBotを作成するサンプル Line-Bot-Sandbox github.com

Go言語でテキストの文字数制限を実行するライブラリ

Go

onga-tec.hatenadiary.jp 以前Goで文字数制限処理をするのにはどうすればいいのか悩んだのだが、 WEBアプリケーションを作成する際に表示文字数制限はよく利用するのでライブラリとしてまとめてみました。 go-text-export github.com インストール方法 go ge…

Go Nested Json Unmarshal

Go

GoでNestされたjsonの扱いがわからなかったのでメモ。 jStr := ` { "root": { "c1": ["cv1"], "c2": ["cv2"] } } ` type Children struct { c1 []string `json:"c1"` c2 []string `json:"c2"` } type Root struct { c Children `json:"root"` } var root Roo…

go get でverisonを指定したいとき

Go

git から直接バージョンを指定する方法で解決した。 git tag -l git checkout tags/v0.0.2

UbuntuへGo1.7をインストールする

Go

UbuntuへGo1.7をインストールしたのでその時の作業ログ $ sudo apt-get update $ sudo apt-get -y upgrade $ wget https://storage.googleapis.com/golang/go1.7.4.linux-amd64.tar.gz $ sudo tar -xvf go1.7.4.linux-amd64.tar.gz $ sudo mv go /usr/local …

GAE/GO datastoreのローカル開発をしてみる。

appengine/datastoreをローカルの開発環境でテストしたいときはどうするのかなと思ったけれど、以下でOKであった。 command goapp test ./src/<path> source import ( "testing" "google.golang.org/appengine" "google.golang.org/appengine/aetest" "google.gola</path>…

Go言語 echo serverからtwitterクライアントのanacondaを利用する。 

Go

AppEngine上でecho serve から、twitterクライアントのanacondaを使用する時のメモ、 echo のContextからどうやって、*http.Requestを取得するのか迷ったのだけれど、以下でいけるみたい。 c.Request().(*standard.Request).Request anacondaでapiを生成する…

Go言語 Echoサーバーでテンプレートエンジンを試してみる。

Go

ほぼサンプルどうり簡単につくってみる。 対象となるファイルを起動時に読み込む。 public/views/*.html render時の引数で、そのファイル名を指定する。 return c.Render(http.StatusOK, "hello", "world") 全体サンプル gist.github.com fasthttp - GoDoc …

Goでスクレイピングをためしてみた。

Go

PuerkitoBio/goqueryを試してみたけれど、すごく簡単。 このブログにアクセスして、そこから各要素を一つだけ取得してみた。当然だけれど取得する要素はページ毎に調整する必要がある。手間がかかる部分。 簡単なサンプル gist.github.com

json.Marshalとjson.Unmarshal

Go

Go言語でJsonの扱いがわからなかったのでしらべてみた。 ざっくりと言えば、 json.Marshal 構造体からJSON文字列へ変換 json.Unmarshal JSON文字列から構造体へ変換 package main import ( "encoding/json" "fmt" ) type MessageMarshal struct { Name strin…

Go言語でMySQLのtimestamp型の日付変換をしてみる

Go

Go言語でMySQLのtimestamp型の日付変換をしてみた。 package main import ( "fmt" "time" ) func main() { t, _ := time.Parse("2006-01-02 15:04:05.999999999 -0700 MST", "2016-08-15 01:15:57.065962927 +0900 JST") fmt.Println(t) fmt.Println(t.Forma…

Go製サーバーをGoogleApp Engineに設置してみる&Google Cloud SQLの設定

GoのEchoで作ったサーバーをGoogleApp Engineに設置してみる。その時の作業ログ。 まずDBの作成 webサーバーをと思ったがまずはDBを作成する。 Google Cloud SQLとは? Google Cloud SQL は、使いやすいフルマネージドの MySQL データベースです。Google Clou…

Go言語からGORMとECHOでJSONを返すAPIサーバー作ってみる。

Go

GORMとECHOでMYSQLのデータからJSONを返すシンプルなAPIサーバー作ってみる。 ECHOはシンプルな構成でサーバーを構築できる印象、使いやすい。ひとまずDBから取得したデータをJSON化して返す事ができました。 echo.labstack.com github.com GORMの部分は前回…

Go言語 Map処理を調べてみた

Go

Go言語でよく使うMap処理を一覧にしてみた。 gist.github.com The Go Playground

Go言語からORMマッパーをつかってMysqlを操作する

Go

Go言語からMysqlを操作するサンプルを書いてみる。 ORMマッパー用の使えるライブラリがないか探してみたところ、gormというライブラリを試してみた基本機能はそろっている印象。実際使ってみても非常に使いやすい。 jinzhu.me 以下作業ログ Package Install …

Go unit test サンプル

Go

Goでunit testを実行する場合の簡単なサンプルを作成してみる。 github.com dog.go package model type Dog struct { Name string Age int8 } func NewDog(name string, age int8) *Dog { return &Dog{Name: name, Age:age} } dog_test.go package model imp…

Go Channels サンプル

Go

The Go Playground package main import "fmt" func main() { messages1 := make(chan string) messages2 := make(chan string) messages3 := make(chan string) go func() { messages1 <- "ping1" }() go func() { messages2 <- "ping2" }() go func() { me…

Goroutine サンプル

Go

Goroutineのサンプルを作ってみる。 まずは、簡単なところから、 github.com The Go Playground package main import "fmt" func f(from string) { for i := 0; i < 3; i++ { fmt.Println(from, ":", i) } } func main() { f("direct") go f("goroutine1") g…