【node.js】サーバサイドjavascript 5【Nashorn】
node.jsでローカルのクリップボード操作ってどうしてる?
java使ったりFlash使ったりは見つかるけどいまいち npm startをしたところ
Something is already running on port 3000. Probably:
Would you like to run the app on another port instead?
と表示されNoを選択したところローカルで立ち上がりませんでした。
(先にport3000を閉じたくてNoを選んだのですが)
既にport3000が立ち上がっているのが原因かと思うのですが
port3000のローカルを閉じるにはどうすればいいのでしょうか?
通常ですとctrl cで閉じれると思うのですが、
気づいたらそのフォルダごと消えていて、でもport3000は更新しても立ち上がったままになっていまして。
フォルダの方は練習用だったので消えても良いのですが
今後のためにport3000を閉じるコマンドを教えて頂けないでしょうか netstat -a -n | grep 3000 >>355
こういったコマンドがあったのですね・・・
関連コマンドも調べてみて勉強になりました
ありがとうございます! prompt系モジュールでtimeout実装したのって無いの?
探したけどinguirerがプラグインで追加できるくらいしか見つからなかった >>358
Promise.race()でタイマーと組み合わせればいい 全く初心者です。
Node.js と nuxt.jsってどうちがうの? Node.js は、Electron, Ruby on Rails でも使う、すべてのweb 系の基礎。
絶対に、インストールして使うもの
パッケージマネージャーのnpm/yarn も使う。
Webpack, Babel なども
Nuxt.js は、Vue.js をより効果的に使うためのライブラリ
JavaScript のサーバー側は、Node.js で、
クライアント側は、jQuery, Vue.js, React など 初めてwebpackでサンプルをビルドした新参ですが、node moduleからbrowser.jsっていうのが組み込まれているようです
これって何をするものなんでしょうか? browser.js は、babelで変換せずに、ES6で書いたJSを、ブラウザで実行する
Not intended for serious use
Compiling in the browser has a fairly limited use case...
まあ、実験用
詳しくは「browser.js」で検索して! >>366
有り難うございます
ES6で書かなければ必要ないものが組み込まれちゃうって事なんでしょうか?
自分のコードが大丈夫でも使用したmoduleがES6の可能性あるとかなのかな
とりあえず気にしない事にします VSCode では、普通にES6 でも動くから、気にした事がない
それが他人のプロジェクトなら、その設定ファイルに書いてあるのだろう サーバにphpとDBおいてフロントサイドをjsで運用しているんですが
web-dev-serverでこういった環境をローカルに作る事って可能でしょうか?
それともnode.jsを使う以上サーバサイドもjsにしてしまうべきなんでしょうか? PHPのbuilt-inのweb server使え >>370
有り難うございます
今までxammpっていうのを使っていたのでそれに流せばいいのでしょうか?
ちょっと試してみます >>371
流す?
projectのrootディレクトリで
$ php -S localhost:8080
ってやれば
http://localhost:8080/foobar.php
でアクセス可能 Ruby なら、PowerShell から、1-liner で、
Rubyで作られた遅いウェブサーバー、WEBrick が起動する
ruby -run -e httpd . -p 8080
そのフォルダに、index.html があれば、
何も考えなくても、これでブラウザからアクセスできる
http://localhost:8080
これで遊んだ後は、Routing, O/R マッパーなどを備えた、Sinatra, Rails などのフレームワークを使う。
Rails のコピーが、CakePHP, Spring Boot 最終的な構成で、考えれば?
フロントエンドをサーバーサイドと一緒に配布する(ただの静的ファイル扱い)だけなら、同じサーバでいいけど、
そうでないなら、フロントエンド側も初めから別のサーバにしておく方がいい(CORS対応は必須)。 dev-serverだから開発用途のでしょ
たぶんwebpack-dev-serverだろうけどそれならhot module replacementとか使えるからサーバが何だろうと開発時は使うべき
サーバがnode以外の時はproxyの形で使える >>376
有り難うございます
proxyの概念自体がよく解ってないんですが、そういう仲立ち的な使い方も出来るという事ですね
ちょっとnpmだけでも覚える事が多すぎるのでゆっくり慣れていく所存です… Node.js のnpm, yarn, PHP のComposer とか、Ruby のBundler のコピーだろ。
別に、覚えることなんてない
global/local のインストールの区別と、本番用/開発用の区別だけ。
それと、設定ファイル たぶんnpmレジストリで公開されてるパッケージ群の総称としてnpmと言ってんじゃね npmのパッケージ全部覚えるとか
Cの野良ライブラリ覚えるのとか
githubのレポジトリ全部覚えるのとか
苦行以外の何物でもない node.jsはjavaにおけるjvmみたいなもの?
electronを使ったデスクトップアプリは今後普及するでしょうか? >>382
web開発で培った技術がパソコン・携帯端末でもさらに活かせるようになったら嬉しい。 VSCode は、Electron 製
マルチプラットフォームは、
React Native + Expo
アシアルのMonaca(Cordova/PhoneGap) + Onsen UI
Mono を使っている、Unity, Xamarin
やっぱり漏れは、サーバー側は、Node.js よりも、Ruby を使うけど Ruby使うセンスはわからんな。
今どきRailsとか?
あんなの使うぐらいならPHPで素組したほうが早いし安全だと思うわ。 >>385
>あんなの使うぐらいならPHPで素組したほうが早いし安全だと思うわ。
流石にそれはないww >>386
Railsがそれぐらいあり得ない悪手だよ、今どき。 案件の数的にはphp, laravelってのが多いな。
PHPも7以降はプリミティブにもタイプヒンティング使えるからそれを積極的に使うとrailsより良かったりする。 PHPはフレームワーク使わずに、きちんとバリデーションして信頼境界線を意識して使うと、すごく便利よ。
歯を磨くには歯ブラシだなって思う。 Ruby は、JIT で速いから、web サイトの最高速度は未だに、Rails。
世界を驚嘆させた、dev.to もそう
表示速度が“異常な”Webサイト「dev.to」とか
https://dev.to/
元乃木坂46 の川後陽菜のWebサイト、SKIYAKI とか
https://kawagopro.com/
でも、PHP も、次からは、JIT を搭載するらしい Electronで作られたソフトってVSCode以外に何がある? >>392
Slack
Fiddler Everywhere Skype、Discord、Atom、Wordpress、WhatsAppのそれぞれデスクトップ版はElectronらしい HomebrewのインストーラがBashに置き換えられた GitHub、パッケージ管理システム「npm」をメンテナンスするnpm, Inc.を買収
ttp://forest.watch.impress.co.jp/docs/news/1241272.html どっちにpublishすればいいねん問題は杞憂に終わったか
でも一強他弱の構図ってあんまりろくなことにならないんだよなぁ やーんはcliだから今の話とはちょっと…
リポジトリ/レジストリがms/github一強過ぎて他の選択肢がーってことよね eventsモジュールにいつの間にか生えてるonceメソッド
ずっと前にこのスレで誰かが欲しがってたやつだな Deno出てきたけどコアモジュールの互換性がないのはきつい
両対応のための中間モジュールが必要になって太る結果にならないといいけど 勉強を始めるならそれでもいいがプロダクションで使うのはまだしばらくnode一択だな Deno普通に良さそうだな。
地味に名前で喧嘩売ってるのも嫌いじゃない。 deno、typescriptネイティブに使えるのが良いな
セキュリティ機能は、早々にalias切って無効化して使いそう。
あと、モジュール読み込みがgolangぽくURIなのは構わんけど、deno.landの信頼性が未知数だ モジュールがURIなのはgoと同じ轍を踏みそうで気にはなるな。
みんなちゃんと互換性に注意して作って、最初からRESTなAPIのようにv1とかv2とかパスに含めるかな?みたいな猜疑心はある。
ただ、Denoでよくやったと思うのは、バンドラーを積んだ事だと思ってるけど、みんなどう思う?
今までnodeで作ったサーバモジュールをインターネットが繋がってない環境にデプロイするの、結構めんどくなかった? bundleは素晴らしいと思う。
モジュールURIはversion含められるみたいよ armまだなのか。ラズパイで動けばホントに言うことなかったんだけどな。 やっぱbundle前提か。
しかし、deps.tsは言われてみるとなんと言うことはないんだけど、賢いな。
こいつがっつり使ってみようかな。 Nodeと併用できないと趣味以外で使う人いないだろうな node.jsなしでESLintが動かないなら難しい
あとlanguage protocol serverが実装されないと難しい
開発ツールとしてのポジションとなるのは難しいね linterはdenoが公式に内蔵する可能性高い
formatterはすでに入ってる nodeにもTLA着たけどREPLじゃ動かんな
仕様ではESM限定だった気がするけどDevTools辺りではできてなかったっけ こんな感じのコードでresolveは実行されてもpromiseが伝達しないケースがあるんだけど
内部的にはどういう理屈でそうなってるの?
new Promise(function(resolve,reject){
eventemitter.on('hoge', function(){
this.removeAllListeners();
resolve();
});
}); >>427
伝達されないケースの具体例を出さないとわからんよ 実際にはlistenerがasync関数で後から発火した他の同期listener内で先にresolve実行してた
そりゃ伝達しないわ… Web API実装の流れでNodeにEventTargetが来たけど使う人いる?
逆なら欲しかったけど データベースからデータオブジェクトを
returnする関数をあたかも同期関数のように
ただ実行するだけで戻り値を得られるように作りたいです。
DB情報取得関数定義内でasync await promise
を使ってみましたが
戻り値がpromiseのpendingになってしまったので
仕方なく実行側でもpromiseを生成してラップして
then()を使ってようやく戻り値を得られました。
しかし本来は実行側でpromiseとthenを使うことなく
戻り値を得たかったです
どうすれば良いか教えてください。
あと関数定義内でresolveの実行とreturnがどう違うのか
がわかりません。 頼むからコードで説明してくれ
似た質問多いけど非同期を同期にすることは不可能
やるなら呼出側の文脈をまるごと非同期にしてawait まるごとも今ならTopLevelAwaitがあるから楽だね
callbackに渡されるresolveはpromiseを解決させるためのスイッチであってreturnではない
Promiseに対する理解が曖昧なままDB扱う処理を書くのは危ないと思う ライブラリっつーのか?
Passportやexpress-sessionってどうやって見つけてきてるの? github express middleware やりたいことの英語
でググる cryptoで公開鍵ファイルつかって
暗号化したんですが
同じデータが毎回違う暗号になってしまいます。
原因を教えてください たぶん、時刻とか、何かランダムな要素を使っているのだろう 今後は大規模システム以外は全てJavaScriptだけで書ける夢のような未来が来るね。 非同期処理って普通に
バグと脆弱性の温床になるよね? node.js 面白いな。久しぶりにおもしろい言語だ。 PythonとかRubyとかPHPって面白いとか言われてるけど、正直イマイチだよ。
俺はPerlのが好き。 サーバサイドで非同期で
IOやりたい状況なんてそうそうないよ。
ロギングくらいか
とくにトランザクション処理で非同期に
動かれちゃうとほんと地獄
同期的な処理をする専用の
DBアクセス
ファイルIOアクセス
ネットワークアクセス
するライブラリを提供すべき
使用側でpromiseとかじゃなくて