カテゴリー : 2015年 3月

[Node.js] phantom モジュールの addCookie メソッドの引数が変更された

Node.js 向けの PhantomJS wrapper である phantom の addCookie メソッドの引数がバージョン 0.7.1 から 0.7.2 で変更になりました。

そのため addCookie メソッドを使ってる箇所がエラーで動かなくなってしまいました。

phantom stdout: TypeError: incompatible type of argument(s) in call to addCookie(); candidates were
    addCookie(QVariantMap)
 
 
phantom stdout:   /u/apps/myapp/shared/node_modules/phantom/shim.js:5621
  /u/apps/com/shared/node_modules/phantom/shim.js:4526
  /u/apps/com/shared/node_modules/phantom/shim.js:4502
  /u/apps/com/shared/node_modules/phantom/shim.js:4382
  /u/apps/com/shared/node_modules/phantom/shim.js:4370

変更点は、

addCookie: (name, value, domain, cb=->) ->

から

addCookie: (cookie, cb=->) ->

に arguments が変更されているだけです。

なので name, value, domain と個別に引数に渡されていたのを cookie オブジェクトにまとめて渡すように、addCookie メソッドを呼び出しているコードを修正すれば OK です。

詳しくは上記の issue と pull request を読むと分かりますが PhantomJS の API に合わせる方針で修正されたようです。

[JavaScript] Cross origin requests are only supported for protocol schemes: http, data, chrome, chrome-extension, https, chrome-extension-resource.

ローカル環境でローカルにある JSON ファイルを $.getJSON しようとすると Chrome では file スキーマは読み込んでくれなくてエラーが発生します。

JavaScript

続きを読む

[MongoDB] 銀行口座のスキーマ定義サンプルコード

以前、Mongoose (MongoDB) で銀行口座の情報を取り扱う Scheme の定義をしたときに悩んで付けた field 名を公開します。

MongoDB | モンゴディービー

続きを読む

[Nginx] upstream timed out (110: Connection timed out) while reading response header from upstream

当サイト codenote.net が 504 Gateway Time-out で接続しにくい状態になっていました。

まず、Nginx のエラーログを確認すると upstream timed out (110: Connection timed out) while reading response header from upstream というエラーが出てました。

Nginx

続きを読む

[WordPress] モバイル端末向けの使いやすいテーマ Hew

WordPress の無料テーマ Hew がモバイルサイト向けに使いやすそうなのでご紹介します。

WordPress | ワードプレス

続きを読む

カンタンに画面共有できるサービス join.me がペアプロやMTGにとっても便利

join.me というサクッと画面共有できるサービスがめっちゃ便利で、メルカリのエンジニアさんたちがペアプログラミングに使っているという話を聞いて 本日 MTG で使ってみました。

join-me

本日の MTG は Backlog と Github issue を眺めながら来週の開発タスクの工数算出するという内容でした。「この機能は開発工数 3 時間で、レビューや QA に 2 時間ぐらい掛かるかな?」というような内容を話しながら、手元で issue に comment したり Backlog に工数を入力していました。この手元の作業を大きめの外部ディスプレイに出力せずに、画面共有することができるのはとても便利でした。

使い方については、

とかに詳しく書かれていますので、そちらを参考にしてください。

とても簡単にスクリーンキャストができてとても便利でした。動作も重たくなく、スムーズに使えるのでオススメです。

[Mongoose] 途中から field に default 定義を追加する場合の実装方針

Mongoose で途中から field に default 定義を追加する場合の実装方針をご紹介します。

mongoose | マングース

続きを読む

[Windows] 誤ってプログラムを削除したときは「システムの復元」で元に戻す

Javaのアップデートを促す偽サイトが頻繁に表示される問題を解決したときに、不要と判断して「プログラムの削除と変更」からプログラムをアンインストールしまくりました。

いくつかプログラムを削除して問題は解決したものの、一部のソフトウェアが動かなくなったり音が出なくなるなどの問題が発生しました。必要なプログラムまで削除してしまったみたいでした。

こういうときには、システムの復元という機能を使うとカンタンに元通りにすることができるので覚えておくといいかもしれません。

僕はひさしく Windows を触ってなかったのでこの機能の存在をすっかり忘れていて、復旧に少し手間取ったことがありました。

[MongoDB] field を削除するコマンド

MongoDB で不要なフィールドを削除するには db.collection.update を $unset で利用します。

MongoDB | モンゴディービー

続きを読む

[Windows] Javaのアップデートを促す偽サイトと解決方法

2014年10月ぐらいでしょうか、Javaのアップデートを促す偽サイトが流行っていましたね。

僕の周りでも家族や知人など数名が感染していて、解決するまでにやったことメモっていたのを公開しておきます。

  • ブラウザのキャッシュ、Cookie、履歴など全て削除
  • IObit Uninstallerで怪しいプログラムをアンインストール

やったことはこの2つだけです。解決したら IObit Uninstaller は常駐して邪魔だと思うので、これもアンインストールしてしまいましょう。

解決するまでに数時間もかかったので、普段から「変なサイトを開かない」「怪しい広告やリンクをクリックしない」など気をつけてインターネットしないといけませんね。