1 名前:デフォルトの名無しさん mailto:sage [2013/01/23(水) 19:30:29.58 ] pythonやrubyやPHPと同じ土俵でjavascriptが使えるようになりました。 サーバサイドjavascriptについて語りましょう。 node.js - googleが開発したV8エンジン上で実行できる処理系 nodejs.org/ Rhino - JVM上で実行できる処理系 https://developer.mozilla.org/ja/Rhino javascriptはrubyと比較してもかなり速い shootout.alioth.debian.org/u32/benchmark.php?test=all&lang=v8&lang2=yarv 基礎から学ぶNode.js gihyo.jp/dev/serial/01/nodejs node.jsの概要とアプリケーション開発の準備 gihyo.jp/dev/serial/01/realtimeweb/0002 前スレ 【node.js】サーバサイドjavascript【Rhino】 toro.2ch.net/test/read.cgi/tech/1310087535/
690 名前:デフォルトの名無しさん mailto:sage [2014/04/27(日) 21:07:26.23 ID:lsyfz5Zx] >>685 だけど 【鯖】 var buf = fs.readFileSync('./public/test.jpeg'); ... socket.send( { 'buf': buf} ); 【蔵】 var blob = new Blob(data.buf, {type:"image/jpeg"} ); ... var image = document.getElementById('image'); image.src = URL.createObjectURL(blob); でダメなんだけどどうしたらいいです?
691 名前:デフォルトの名無しさん [2014/04/27(日) 21:19:50.40 ID:LTucjFHu] node.js install 方法教えてください linux desu
692 名前:デフォルトの名無しさん [2014/04/27(日) 22:41:22.63 ID:udbvuRA2] 今日からnode.jsを勉強し始めた超初心者ですが質問させて頂きます eclipseでhelloworldを表示するだけのプログラムなんですが 実行後にプラウザで指定のアドレス「localhost:1337/」にアクセスしようとすると 以下のようなメッセージが表示されてしまいます 「Google Chrome では localhost:1337 に接続できませんでした」 コマンドプロンプトではうまく表示できるんですが何が原因なのかよくわかりません どなたかわかる方はいらっしゃいますでしょうか?
693 名前:デフォルトの名無しさん [2014/04/28(月) 00:03:26.83 ID:kxZmAbR2] >>692 です 「現場で通用する力を身につけるNode.jsの教科書」って参考書よみながら やってるんですがなぜ実行できないのか全く原因がわかりません ちゃんと書かれてるとおりにやってるんですが・・・。 どなたか助けて下さい
694 名前:デフォルトの名無しさん mailto:sage [2014/04/28(月) 00:08:33.21 ID:bz3BSanb] ポート1337でhttpサーバになるプログラムになってないか、ファイヤウォールの類で無効化されたんだろ。 1337がどっから出てきたかは知らんが、何かの手順を参考にするならそれに対応するサンプルコードを動かせよ?
695 名前:デフォルトの名無しさん mailto:sage [2014/04/28(月) 00:49:41.54 ID:rB8lTHTI] >>693 その本買おうと思ってたんだけど ダメな本なのかよ 買う気失せたわ
696 名前:デフォルトの名無しさん mailto:sage [2014/04/28(月) 01:20:46.03 ID:sLIIqVQo] book.mynavi.jp/support/pc/5069/ zip の中の chapter2.txt の冒頭のコードが >>692 の動かしてるコードだろうか % cat hello.js var http = require('http'); http.createServer(function (req, res) { res.setHeader('Content-Type','text/plain'); res.end('Hello World\n'); }).listen(1337, '127.0.0.1'); console.log('Server running at 127.0.0.1:1337/ '); % node hello.js & [1] 28814 % Server running at 127.0.0.1:1337/ % curl -q localhost:1337 Hello World もしコマンドプロンプトから上掲スクリプトを実行して ブラウザからアクセスした場合には Hello World が表示されるのに Eclipse から実行してブラウザからアクセスした場合には表示されないのなら それはもう Eclipse(の使い方)の問題だろう
697 名前:デフォルトの名無しさん mailto:sage [2014/04/28(月) 01:26:22.72 ID:6+nhvyWj] >>690 例: オブジェクト URL で画像を表示 https://developer.mozilla.org/ja/docs/Using_files_from_web_applications#Example:_Using_object_URLs_to_display_images
698 名前:デフォルトの名無しさん mailto:sage [2014/04/28(月) 08:48:18.26 ID:6+nhvyWj] var image = new Image(); img.src = URL.createObjectURL(blob); img.onload = function(){ var ctx = canvas.getContext('2d'); ctx.drawImage(image, 0, 0); };
699 名前:690 mailto:sage [2014/04/28(月) 20:31:00.21 ID:mKpufpGt] >>697 ,698 ありがとうござます そのようにやってみましたが、やっぱりダメでした javascriptコンソールでimage.srcを確認すると""になっていて、URLを正しく生成できて ないのでそれ以前の問題かと思います…
700 名前:デフォルトの名無しさん mailto:sage [2014/04/28(月) 22:13:24.84 ID:6+nhvyWj] webkitURL.createObjectURL(blob)
701 名前:692 [2014/04/29(火) 01:33:55.42 ID:BVOx6MN/] >>694 http//:book.mynavi.jp/support/pc/5069/ このzipファイルのlist2-1です コマンドプロンプトからならいけるんでファイアウォールの設定ではなさそうです >>696 その通りです おそらくeclipseの実行の仕方がまずいんでしょうね 実行タブから実行を選択して nodeApplication(1)ってのを選択してるだけなんですが・・・ コンソールには<終了>hello-world-server.js[Node Application]Node Process って表示されています もう何がいけないんだかよくわかりません
702 名前:デフォルトの名無しさん [2014/04/29(火) 07:36:19.85 ID:pZyrXbny] >>690 はぁ〜あ Nodeのは独自の「Buffer」であってWebSocketで遅れる「ArrayBuffer」「Blob」じゃないことくらい言われんと分からんかね? 最新のバージョンならこれを使うか nodejs.jp/nodejs.org_ja/api/buffer.html#buffer_buf_toarraybuffer 自分でメソッド実装すればいいのに 適当に思い付きでコード書いて動かないって言われても呆れるんだけど
703 名前:デフォルトの名無しさん mailto:sage [2014/04/29(火) 09:37:37.00 ID:HxmUr44w] >>701 とりあえず Eclipse は脇に置いておいたら? 入門段階から厄介事を増やしても意味ないよ
704 名前:690 mailto:sage [2014/04/29(火) 10:39:14.20 ID:mW+HoIFo] >>702 >>685 の時点で分かってないことが確認できると思います、情弱ですみません ArrayBufferで送ったつもりですが、画像が表示できませんでした [鯖] var fs = require('fs'); function toArrayBuffer(buffer) { var ab = new ArrayBuffer(buffer.length); var view = new Uint8Array(ab); for (var i=0; i<buffer.length; i++) { view[i] = buffer[i]; } return ab; } var buf = fs.readFileSync('./public/test.jpg'); var arraybuf = toArrayBuffer(buf); io.sockets.on('connection', function (socket) { socket.emit(‘test’, {'buf':arraybuf}); }); [蔵] var arraybuf; socket.on(’test’, function (data, fn) { arraybuf = data.buf; }); blob = new Blob([arraybuf], {'type':'image/jpeg'}); var img = document.getElementById(‘image’); img.src = window.webkitURL.createObjectURL(blob);
705 名前:デフォルトの名無しさん mailto:sage [2014/04/29(火) 11:33:24.82 ID:b2HTM3GX] 馬鹿には無理
706 名前:692 mailto:sage [2014/04/29(火) 12:04:55.43 ID:BVOx6MN/] >>703 確かにそうですね ただ入門書がeclipseありきで解説されてるのでこのままだとちょっとやりづらいです・・ 実行に成功するとコンソールに server running at 127.0.0.1:1337 と表示されなきゃ行けないみたいなんですが今は出ないですね・・・ 困りました・・・
707 名前:デフォルトの名無しさん mailto:sage [2014/04/29(火) 13:11:56.13 ID:iJeyYRNW] EclipseのJSは糞 それを選んだ入門書も糞
708 名前:デフォルトの名無しさん [2014/04/29(火) 13:43:22.00 ID:NlKWryVs] java糞ript
709 名前:デフォルトの名無しさん [2014/04/29(火) 19:30:44.12 ID:pZyrXbny] >>704 そりゃ送ってるのはオブジェクトであってArrayBufferじゃない 『ArrayBuffer』を送るの
710 名前:デフォルトの名無しさん mailto:sage [2014/04/29(火) 22:02:52.91 ID:mW+HoIFo] >>709 送っているのは確かにオブジェクトで、プロパティにArrayBufferオブジェクトを置いてますが、 ダメですか
711 名前:デフォルトの名無しさん mailto:sage [2014/04/30(水) 00:43:24.82 ID:lkTAPU57] node-webkitって64bitでしか動作しないネイティブモジュール使える?
712 名前:デフォルトの名無しさん mailto:sage [2014/05/01(木) 19:12:22.39 ID:KhzGrxCS] promise入ってもasyncの呪縛から抜け出せない
713 名前:デフォルトの名無しさん mailto:sage [2014/05/02(金) 20:56:02.34 ID:Ygsxpf2D] そんな問題、俺らが放っておいても誰かが解決する
714 名前:デフォルトの名無しさん mailto:sage [2014/05/04(日) 14:23:00.29 ID:ZI7d8CWK] てs
715 名前:デフォルトの名無しさん mailto:sage [2014/05/04(日) 22:23:57.42 ID:Z6Cxw61y] callbackfunctionがなんとかしてくれるに違いない
716 名前:デフォルトの名無しさん [2014/05/07(水) 00:41:04.12 ID:9htZeF2k] mongodbをインストールしようと思ってるんですが コマンドプロンプトで「mongo」と打つと以下のようなエラーメッセージが出ます 何が問題でしょうか? MongoDB shell version: 2.6.1 connecting to: test 2014-05-07T00:33:36.446+0900 warning: Failed to connect to 127.0.0.1:27017, reas on: errno:10061 対象のコンピューターによって拒否されたため、接続できませんでした 。 2014-05-07T00:33:36.454+0900 Error: couldn't connect to server 127.0.0.1:27017 ( 127.0.0.1), connection attempt failed at src/mongo/shell/mongo.js:146 exception: connect failed
717 名前:デフォルトの名無しさん mailto:sage [2014/05/07(水) 03:09:41.85 ID:BqU8Y0aP] mongo はMongoDBに接続するコマンド あとスレチ
718 名前:デフォルトの名無しさん mailto:sage [2014/05/08(木) 07:58:35.82 ID:Yn6TNSXa] 微妙だがスレチとは言い切れない
719 名前:デフォルトの名無しさん mailto:sage [2014/05/08(木) 11:25:50.83 ID:E2UtWS+A] Node.jsってPHP並の標準機能持ってる? 欲しい機能調べても自作してる人ばっかりで、外部のOSSライブラリに頼れとか言われたり、 凄い発展途上国的なイメージがあるんだけど。
720 名前:デフォルトの名無しさん mailto:sage [2014/05/08(木) 11:41:34.61 ID:ZqjBCqlo] >>719 スクレイピングやってるけど、 さほど困らんね。 Jquery関数殆ど使えるし。 php.jsもあるでしょ。 使ってないけど。
721 名前:デフォルトの名無しさん mailto:sage [2014/05/08(木) 13:21:59.10 ID:QEfRwn3W] 今時そこまでライブラリ毛嫌いする精神がわからん 標準でなんでもかんでもできる超巨大処理系がお望みで? …ああ、ネットにいっさい接続できない空間で開発してるんだ はいはい拝承しました 暴言お許し頂きたく
722 名前:デフォルトの名無しさん mailto:sage [2014/05/08(木) 13:26:34.54 ID:tK+74K/E] 下手に本体と一体になられるとバージョンアップとか面倒になりそうだし、 本体はミニマムな方が有難い事が多いと思うけどなぁ…
723 名前:デフォルトの名無しさん mailto:sage [2014/05/08(木) 16:22:40.21 ID:Y0Db7X6U] node.jsをスタンドアロンで使いたいんだけど クロスドキュメントとか使うん? ちなみに使いたいのはWebSocketだけなんだ
724 名前:デフォルトの名無しさん mailto:sage [2014/05/08(木) 20:54:51.94 ID:KzWSCQ6m] スクレイピング以外で皆どんなことに使ってんの?
725 名前:デフォルトの名無しさん mailto:sage [2014/05/08(木) 20:57:28.29 ID:ZqjBCqlo] スクレイピングのメリットも教えて欲しい。 なぜ、node.jsでスクレイピングするのか。
726 名前:デフォルトの名無しさん mailto:sage [2014/05/09(金) 09:03:51.47 ID:cd4fHdBG] phpよりjavascriptの方がイケてるから
727 名前:デフォルトの名無しさん mailto:sage [2014/05/09(金) 10:21:21.61 ID:dvCRlMvr] 非同期だからじゃね?
728 名前:デフォルトの名無しさん [2014/05/09(金) 21:06:29.55 ID:slh2b+7+] マルチンコ
729 名前:デフォルトの名無しさん [2014/05/09(金) 23:19:49.07 ID:SjMyjWDG] スクレイピングってまだRubyのほうが資料多いよね
730 名前:デフォルトの名無しさん mailto:sage [2014/05/10(土) 01:09:34.85 ID:WdwrVDqC] Phantom
731 名前:デフォルトの名無しさん mailto:sage [2014/05/10(土) 01:15:18.11 ID:XNOk+z7r] >>729 ほんとかよ
732 名前:デフォルトの名無しさん mailto:sage [2014/05/17(土) 00:42:39.61 ID:9Qjazc0i] nodeの標準のファイル操作関数、低機能過ぎね? mvとかmkdirpくらいの関数は標準で実装してほしいわ
733 名前:デフォルトの名無しさん mailto:sage [2014/05/17(土) 00:55:33.88 ID:47dW4G/Z] 標準で用意するのはPOSIXのJSバインディングレベルまでだってじっちゃが言ってた
734 名前:デフォルトの名無しさん mailto:sage [2014/05/18(日) 03:29:40.43 ID:ghNGAN9S] コマンドライン引数の解析って、どうやるの? commander.jsって、オプションにパラメータ与えられる?
735 名前:デフォルトの名無しさん mailto:sage [2014/05/18(日) 03:55:44.73 ID:OhCnVEnr] 人気あるのはoptimistじゃね?
736 名前:デフォルトの名無しさん mailto:sage [2014/05/24(土) 10:10:23.11 ID:7CvGDBUR] win32のnode.jsでコンソールに文字吐くときの挙動、 リダイレクトのマルチバイト文字コードがUTF8なのは仕方ないし、 コンソール出力時にUnicodeAPI+UTF16使ってくれるのは有難いんだが… キャッチされない例外だけ、コンソール相手でも非UnicodeAPI+UTF8なのは何故なんだ 紛らわしいっちゅうねん
737 名前:デフォルトの名無しさん mailto:sage [2014/05/24(土) 10:49:29.33 ID:DTqC/a46] コンソールって cmd.exe のことなら cmd.exe 自体を UTF-8 化するといい 981 デフォルトの名無しさん [sage] 2014/04/15(火) 13:13:11.98 ID:q9fQ+t/g Be: ネットにはデマ情報がいっぱい残ってるので 正しい情報をメモ cmd.exe UTF-8 chcp 65001 cmd.exe のショートカット リンク先 %SystemRoot%\system32\cmd.exe /c start "UTF-8" cmd このショートカットを起動してプロパティからフォントの設定(※ボールドフォントにチェックを入れる) レジストリ \\HKEY_CURRENT_USER\Console\UTF-8 に FaceName REG_SZ 適当 FontWeight REG_DWORD 0x0190 FontSize REG_DWORD 0x00120000 CodePage REG_DWORD 65001 nazochu.blogspot.jp/2011/08/blog-post_26.html
738 名前:デフォルトの名無しさん mailto:sage [2014/05/24(土) 21:49:25.16 ID:7CvGDBUR] >>737 Windowsのコンソールウィンドウはcmd.exeが出してるわけじゃないけどね 実行ファイルのターゲットプラットフォームがConsoleならOSが出すはず で、chcpはどうにも挙動が不安定だからなるべく使いたくないんだよ 例えばXPで使うと文字幅誤認やフォント不一致で画面壊れるから使えんし レジストリでも変えれるのは初めて知ったけどポータブルに動かせない上にフォント問題は未解決 結局process.on('uncaughtException',function(err){console.error(err.stack||err);process.exit(1);}); で他と同じストリーム出力使うことにして挙動を揃えたけど、 デフォルトのエラー行表示処理ってどっから持ってくりゃいいんだ… これだとエラーオブジェクトじゃない場合に例外発生位置が分からないし、 catch(e){throw e;}で投げ直された場合の投げ直し地点も捕捉できない
739 名前:デフォルトの名無しさん mailto:sage [2014/05/24(土) 22:15:08.43 ID:ZopzTJKp] > XPで使うと ナウでヤングなOSでつね