content.jsとbackground.htmlのやり取りの追跡方法

0 コメント

extension開発でXHRを使いたかったんだけど、
めちゃめちゃハマったのでまとめてみる。
content.jsからbackground.htmlにデータを送って
background.htmlでXHRを使うってのは前情報で知ってたんだけど、
実際にそのデータをやり取りする経路の追い方がわからなくて
かなりハマりました。


結論から言うと、

content.jsとbackground.htmlのログ出力場所は別だった!

ΩΩΩ<な、なんだってー!

ということですね。
じゃあどこなんだよ!って事で以下SSを交えて簡単に説明。

<---- 前提 ---->
以下で語る事の前提として、
ログの出力とはconsole.logで吐き出す文字列の事を指します。
<- 前提ここまで->

content.jsのログが出る場所は説明するまでもなく、
manifest.jsonでextensionの挙動を許可しているURLのページですね。

















extensionを許可しているページ上で右クリックして「要素を検証」を選択

















自分はベータ版のChrome5を使ってるので画面上部に
Consoleのタブがありますが、安定版の4を使ってる人は
左下の左から2番目のボタンを押せばコンソールが出てきます。

content.jsでログを出力すればここにログが出ます。
まぁこれはみなさん周知の事実かと思われます。
問題は次ですね。
background.htmlでログを出力したときにどこにでるか!
それはここでした!
















拡張機能のextensionのアイコンが出ているちょっと右下に
「 動作中のページを調査:」って書いてあって、
その下にbackgroundページに指定しているhtmlのファイル名がありますね?
そこをクリックすると!

ジャジャーン!


















Web Inspectorが起動します!
ここでコンソールを表示すると
















background.htmlで動いてるscriptのログが出力されます!!
画像だとsyntax errorでてますけど・・・w

という感じで、content.jsとbackground.htmlそれぞれでログを出力すると
上記の二つの場所でログが出るので、
それがわかればcontent.jsとbackground.htmlとの
データのやり取りは制覇したも同然です!

「ファイル名を指定して実行」って使ってる?

0 コメント

自分は最近使うようになりました。
と言っても、せいぜいブラウザを立ち上げる時位なんですけど。

んで、結構コイツが便利なので、
自分が起動したいアプリやらフォルダも
起動できるようにならないかなーと考えたので
ググってみたら、答えはありました。

「ファイル名を指定して実行」をランチャー化するカスタマイズ方法と起動コマンド一覧

詳細は紹介した記事に書いてあるので割愛しますが流れとしてはこんな感じ。

任意のフォルダを作成

作ったフォルダに対して起動したいアプリやフォルダのショートカットを突っ込む

作ったフォルダを環境変数の設定でPath設定する。
(かなりぶっきらぼうに書いたのでよくわからない人は
上記リンク先を読んでください。ここより具体的に書いてあります。)

まだ、自分も使い始めてないのですが多分コレかなり良いです。
何が良いかというと、「ファイル名を指定して実行」の時に
②で作ったファイル名を指定すれば、起動したいものが
起動出来るようになるんですが、ショートカットを作成したあとに
そのショートカットの名前を変更してやれば、
好きな単語で好きなアプリが起動できる訳です。
例えばDropBoxのフォルダのショートカットに対して
「db」と名前を付けてやれば、「db」でフォルダを開くことが出来るわけです。
これってすごくないですか?

注意点としては、Windowsのシステム上先に登録されている文字列を
ショートカット名にしても、自分が指定したショートカットではなくて
先にシステムで割り当てられてるモノが起動するってことですね。
ちなみにシステムで割り当てられてるコマンド一覧は下記リンクに書いてあります。

ファイル名を指定して実行 まとめ


と、オレスゲー事に気づいちゃった!みたいな勢いで書いてますけど、
かなり既出の情報ですね。ググれば情報がザクザク出てきます。
でもここまで書いて記事削除ってのもアレなんでアップしちゃいます!


家でゆっくりやれるときとかは余り使う必要ないかもしれませんが、
電車の中でノートパソコンやネットブックをイジる時には使い勝手がいいはず!

SELECTして検索したの結果のX行目からY件取得する方法

0 コメント

SQLがスゴイ!
っていうか自分がSQLについてしらなすぎなだけなんですけど。

今回すごいって思ったのはLIMIT と OFFSET

この二つを以下のように使うと、

SELECT *
    FROM TABLE名
        LIMIT Y OFFSET X;
       
タイトルで書いた
SELECTして検索した結果のX行目からY件の結果を取得することが出来る。
ちなみにこれはPostgreSQLでのお話(自分が触ったのはVersion8.3.7)

Oracleだと結構面倒くさいみたいですね。
参考記事
Oracleでlimit offsetもどき - よねのはてな


そんな訳でSQLを勉強しようと思いました。
最近は@sikusimaさんフォローされてつぶやきを見たりしてるだけですけど・・・
Togetter - まとめ「@sikushima 氏のDB語り:適材適所/ストアドプロシージャ/ORM編」


@sikusimaさんが以前つぶやいてた
現場で使えるSQLを会社から拝借してきたので勉強しよう。




トリガーを使って更新日時を自動で挿入するとかそんな感じのも
汎用性が高そうだから今度調べよう

Mapに格納されてる中身を全部みたい!

0 コメント

というわけでググってみたら素敵な情報がありました。
中身まんま転載ですがご紹介。

for (Map.Entry entry : userInfoMap.entrySet()) {
System.out.println("key:" + entry.getKey() + " value:"
+ entry.getValue());
}






元記事はこちらです。

 Mapの中身を一気に出力 - メモ