yaotti's diary

Software is Eating the World

ターミナルからtwitterへポストするgaucheスクリプト

かいた。

#!/usr/local/bin/gosh
(use rfc.http)
(use rfc.base64)

(define (main args)
  (let* ((username (cadr args))
	 (passwd (caddr args))
	 (status (cadddr args))
	 (basic-info (string-append "Basic "
				    (base64-encode-string (string-append
							   username ":" passwd)))))
    (define (twitter-post status)
      (http-post "twitter.com" "/statuses/update.xml"
		 #`"status=,status"
		 :Authorization basic-info))
  (twitter-post status))
  0)


てきとうに保存して

./twitter.scm username password ほげほげ

などとする。


認証がよくわからなかったけど、こことか見てどうやらリクエスト・ヘッダが関係しているらしいとわかり、調べてみた。
http://www.studyinghttp.net/header
いろいろあるみたい。
http://www.studyinghttp.net/header#HTTP1.1_Header
知らなんだ。


発言を平文で送っちゃってるのはよろしくないな。
どうすればいいのやら。