AngularJSとRequireJSを合わせて使ってみた

モジュール単位でファイルに分けたいかなーと思ったので、 AngularJS本家のチュートリアルのphonecatAppを題材にして、 AngularJS + RequireJS | StarterSquadを参考にちょっとアレンジ。 結果のソースはこちら 単体テストの実行と結合したソースをproductio…

mongooseで埋め込みを使う

MongoDBのリレーションでやるか埋め込みでやるか迷った末に埋め込みでやることにしたので、 mongooseでのやり方をざっと試してみた。 使ったバージョン node.js v0.8.18 mongoose 3.5.5 試験ソース コールバックだらけになるので、jsdeferred使って流れ整理…

expressでフォームからファイルアップロードする

node.jsでexpress使ってフォームのファイルアップロードする場合、 bodyParser使っていればrequestのfilesから取得できる様子。 実験コード HTMLはこんな感じ。 <html lang="en"> <head> <meta charset="UTF-8"> <title>Study</title> </head> <body> <div> <h3>File Upload</h3> </div></body></html>

node-mysqlでTEXT型使ってたら文字化けした

node-mysqlの0.9.6を使っていたら、TEXT型のカラムのデータが時々文字化けする現象に出くわした。 node-mysqlはJavaScriptだけで全部できてたので、ソースを追って調べてみた。 調査 mysql/lib/query.jsに row[field.name] += buffer.toString('utf-8'); と…

WebSocketでバイナリを送受信してみた(2)

クライアントからバイナリを送る確認ができたので、 バイナリに更にデータ乗っけて送ったりもらったりしてみる。 クライアント側 input:fileでファイルを参照したら、先頭にhelloworld文字列を追加した バイナリデータとして送信する。サーバ側からメッセー…

WebSocketでバイナリを送受信してみた

Firefox11になってとっくにWebSocketのベンダープレフィックスとれてたし、 バイナリデータの送受信の辺りがどうなってるか確認してみた。確認したブラウザはFirefox11.0とGoogle Chrome18.0.1025.162。 サーバ側 node.jsで実装する。 httpサーバ用にconnect…

node-iconvでEUCJP-WIN使おうとしてころんだ。

node.jsはutf-8が前提なので、sjisだのeucだのは変換してあげないとダメですよ。 とのことなので、扱いたかったデータがeucだったので、node-iconvを入れて変換してみた。 node-iconvのインストールと変換処理 npmで入れる。 $ npm install iconv こんな感じ…

mongoDB使ってみた。

どんなもんだろうなーと思ったので試してみた。 環境はDebian Squeeze インストール Debianなので本家サイトのやり方に従ってパッケージで入れる。 キー追加。 $ sudo apt-key adv --keyserver keyserver.ubuntu.com --recv 7F0CEB10 リポジトリ追加。 $ sud…

node.js-v0.4.4のビルドでころんだ。

先日、node.jsの0.4.4が出てるのに気がついたので、 ダウンロードしてビルドしたら、 scons: *** [obj/release/api.o] Error 1 scons: building terminated because of errors. Waf: Leaving directory `/home/alone/Downloads/node/node-v0.4.4/build' Buil…

SVG用のtoDataURL作ってみた(ただしChromeに限る)。

SVGにはCanvasみたいなデータスキーム作れるtoDataURLメソッドがないみたい。 まあ、DOMを文字列にしてBase64エンコードすればいいかなと思ってたら、 ふと、File API使ってできないもんかなーと思ったのでやってみた。 流れとしては、 SVGのDOMを文字列にす…

IE9をとりあえず試せる環境作って試してみた。

IE9がリリースされましたが、XPにはインストールできないわけで、 Vistaも7も持ってねーよヽ(`д´)ノ ウワァァァンしてたわけですが、 そういえば評価版ってあったような?と思ったので試してみました。 Windows7の開発者向け評価版をダウンロードする。 「MSDN Eval…

jsunitをAntで動かす

jsunitをAntで動かしてみる。 OSはVine Linux5.2でApacheは2.2が入ってる。 jsunitは既に使ってるバージョン2.2を使う前提。 /var/www/html/jsunitに入れてある。 Antの導入。 Apache AntのDownloadでバイナリのアーカイブを入手する。 2010年12月14日現在の…

Redmineを入れてみる。

Redmineってどうなんだろうと思ってたので入れてみる。 インストール先のOSはVine Linux 5.2。 ApacheとかMySQLはすでに入ってる。 メールとかログとかの設定は飛ばして、 ひとまずの導入とApacheで動かすとこまでやってみる。 入手と事前準備 RubyForgeから…

チャット作るよ。10日目

コメント書き込みとログイン周りを実装する。 昔ながらのバージョンはこれでひとまず完了。 コメント書き込みのアクションを作る。 ログイン済みユーザのコメントPOSTを受けとってファイルに書き込む。 まずテストケース。 act =…

チャット作るよ。9日目

超放置してた。やっぱりなかなか継続できないなー。 今日は表示系のアクションとテンプレ周り。 テンプレートは最初に作ったHTMLのモックに手をいれた。 メインページを作る。 まずはメインページ。indexページ的なもの。 基本的にこのページから遷移はしな…

チャット作るよ。8日目

やっとアプリ作りに入るー。 基本設定とブートストラップを作る ディレクトリパス周りを扱うために設定ファイル作る。 フロントコントローラで読み込む予定。 必ず使われるクラスのファイルはブートストラップで読み込んでおく。 auto_loadとか使った方がい…

WebWorkerを使ってみる。

最近のJavascript関係ではWebSocketとWebWorkerが気になってたんだけど、 WebSocketの方はnode.jsとかJettyとか?サーバ側にも仕掛けが必要なので、 手っ取り早くできる方ってことで、今更ながらWebWorkerを試してみた。 試してみたかったことは次の点。 基…

チャット作るよ。7日目

いよいよアプリの実装に入ろうと思ったら、ビューの描画のせいでテスト作りにくい。 なので、その辺の絡みを一気に修正。 Rendererクラス コンストラクタでパラメータ渡すのやめて、専用メソッド作る。 _rendered = false; $t…

チャット作るよ。6日目

アクションを作ったので、制御するコントローラを作る。まずはテストケース。

Google日本語入力API試してみた。

Google日本語入力のAPIが面白そうだったので試してみた。 とりあえずPHPでプロキシ。 file_get_contentsでいいかとは思ったけど、一応PEARのHTTP_Request使う。 addQueryString('langpair', 'ja-Hira|ja'); $req->addQueryString('text', $_GET['…

チャット作るよ。5日目

ビューを描画する仕組みができたので、 いよいよアプリの実装に入ろうかと思ったんだけど。。 なんだかアクションで処理を分けたくなってきたので、 アクションの仕組み作ることにした。 アクションは抽象クラス用意して、それを継承して実装する方向で。 /h…

チャット作るよ。4日目

翔泳社の「10日でおぼえるPerl/CGI入門教室」を参考に始めたのに、 いろいろ独自路線でやっちゃって、もう4日目。まあ、いいや。 ファイルIO周りはできたので、いよいよアプリの実装に入るんだけど、 <html> </html> みたいな感じで、ビューの中にロジックが入るのはあ…

チャット作るよ。3日目

今回は参加ユーザの管理機能を実装する。 同じ名前のユーザでも区別できるように、ログインユーザ毎に一意なIDふって、 リクエスト毎にタイムスタンプを更新する。 ログアウトするか、規定期間以上放置されたタイムスタンプのデータは消す。 ファイルは1行で…

チャット作るよ。2日目

今日は会話ログの管理部分を作る。 前回に引き続き、翔泳社の「10日でおぼえるPerl/CGI入門教室」を参考にするんだけど。。 Perl結構忘れてるので、とりあえずPHPで書く。 本の通り、データはテキストファイルに記録することにする。 タイムスタンプ、ユーザ…

チャット作るよ。1日目

いまどきチャット?って感じだけど。。 まあ、いろいろ遊んでみたいので。 参考にするのはこの本。10日でおぼえるPerl/CGI入門教室作者: 高橋大吾出版社/メーカー: 翔泳社発売日: 2001/04メディア: 単行本購入: 1人 クリック: 12回この商品を含むブログ (7件…

Access-Control-Allow-Origin試してみた。その2

前回めでたくクロスドメインからレスポンスもらえるようになったけど、Cookieが送れなかった件。 参考をよーく見直してみたら、なんかCookieセットできそうな文章を発見。で、再度お試し。 RPC側を次のように修正。Access-Control-Allow-Credentialsヘッダー…

Access-Control-Allow-Origin試してみた。

Access-Control-Allow-Origin使うと、 XmlHttpRequestでクロスドメイン接続できるらしいので、そりゃおもしろいとレッツトライ。 とりあえず、テストドメインtest.devの公開領域に次のスクリプトを準備。

いまさらだけどjsUnitやってみた

ちなみに*Unit系はjava用とかPHP用とかを大昔にちょっと試した程度。 テスト駆動開発とか全然経験なし。 とりあえず本家サイトいってjsUnit2.2をダウンロード。 ZIPを解凍してWeb公開領域に設置。 テスト対象は、文字列を連結するクラスでも作ってみることに…