某ブログサービスでコマンドラインからAPIで記事を投稿するのに、 WSSE認証とBasic認証の二択だったので書いてみました。 なにか書き方が間違ってるのか、たまにエラーになります。 結局、はてなブログにしたので、そこらへんは未検証のままです。 package main import ( "crypto/rand" "crypto/sha1" "encoding/base64" "fmt" "net/http" "time" ) type WSSE struct { username string password string nonceSize int } func New(username, password string, nonceSize int) *WSSE { if nonceSize < 1 { nonceSize = 20 } return &WSSE{ user