はじめに プロジェクトが大きくなると、コードが多くなり、階層構造も複雑になるため、パス指定が複雑になってしまいます。
はじめに Express.js でファイルアップロードする場合、multer と呼ばれるミドルウェアがしばしば使用されます。 しかし、ファイルアップロードに対応するミドルウェアは他にもいろいろあって express-form-data もその1つです。 express-form-data は単なるファイルアップロードのためのミドルウェアではなく、JavaScript の FormData オブジェクトを Express.js で扱うためのミドルウェアです。 Express.js では POST データはフォームから submit されたデータと JSON にのみ標準で対応しています。このため、Fetch API で FormData を POST してもリクエストボディが undefined になってしまい処理が続行できません。 そこで、express-form-data をミドルウェアに
はじめに multer はファイルアップロードでよく使われる Express.js ミドルウェアです。サンプルや関連記事も多くて安定した人気です。 multer ではファイルアップロードに関して次のことが可能です。 単一ファイルのアップロード 単一エレメントからの複数ファイルのアップロード 複数エレメントからの複数ファイルのアップロード npmjs.com のサンプルや説明は簡単な物しかなかったので、上の3つのケースについて簡単に試してみました。 その前に multer の基本ですが次のようにします。 multer モジュールをロードする。 const multer = require('multer'); multer オブジェクトを初期化する。 const upload = multer({dest:updir}); // updir はアップロード先のフォルダ(フルパス)。省略した場
こうするとRubyのActiveRecord風にSequelize経由でdbを操作することができるようになる。また、initで生成されたconfig/config.jsonからdbへの接続情報を指定することになる。 { "development": { "username": "root", "password": null, "database": "database_development", "host": "127.0.0.1", "dialect": "postgres" }, "test": { "username": "root", "password": null, "database": "database_test", "host": "127.0.0.1", "dialect": "postgres" }, "production": { "username": "r
開発者はもう観察しているように、バックエンドウェブ開発のためのExpress.JSというフレームワークが少しずつ人気になっています。それに加えて、Express.JSはMongoose ORMと共に、一般的にREST APIの作成に使います。しかし、MySQL、PostgreSQL、SQLiteなどのような他のDatabase Schemaを使いたい開発者の場合に、どうするのか?SQLに関するデータベース言語のための探せるORMがどこかにありますか?ありがたいことに、そんなことがあります。こういうことはSequelizeというORMです。前の書いた記事とは違って、この記事にExpress.JSにデータベースを統合するという話が書いてあります。これから、Express.JSをSequelizeで使用して開始する方法を紹介します。 こんにちは!マルクス(Twitter Account: @ma
ユースケース: Node.jsでCLIアプリケーション ここではNode.jsでCLI(コマンドラインインターフェース)アプリケーションを開発します。 CLIのユースケースとしてMarkdown形式のテキストファイルをHTMLテキストに変換するツールを作成します。 作成するアプリケーションは次の要件を満たすものとします。 コマンドライン引数として変換対象のファイルパスを受け取る Markdown形式のファイルを読み込み、変換したHTMLを標準出力に表示する 変換の設定をコマンドライン引数でオプションとして与えられる 目次 Node.jsでHello World Hello Worldアプリケーションを通じてNode.jsのCLIアプリケーションの基本を学びます。 コマンドライン引数を処理する コマンドライン引数を受け取り、アプリケーションから使いやすい形にパースする方法を学びます。 ファイ
経産省発の npm モジュール!住所や電話番号の正規化、ジオコーディングなどができる IMI コンポーネントツールを試した! Code for Japan の関さんが SNS でシェアしてて知ったのですが、経産省さんがなにやらオープンソースで住所や電話番号の正規化などなどをするツールを公開したとのこと。 https://info.gbiz.go.jp/tools/imi_tools/ 経産省が住所変換や法人種別名、電話番号の正規化に使えるIMIコンポーネントツールを公開しました。 ソースコードも公開。README にも使い方が丁寧に書かれていました。https://t.co/fPbV00EgZP 素晴らしい動き。こういう... #NewsPicks https://t.co/bew0qGKMFE — Hal Seki (@hal_sk) May 28, 2020 ぶっちゃけ当初はあまり期待
nodebrew 良いです。 久しぶりにnode触ろうとしたら、version 4 とか 5 とかになっていて なんだっけと思って調べたら、io.jsと統合されてたんですね。 知らんかった。 Node.jsとio.jsの最初の統合リリース「Node.js 4.0」が9月に登場予定 - Publickey ついでに、nodebrewどうなんだろうと思って調べていると node.js の環境管理ツール nodebrew - Block Rockin’ Codes にたどり着きました。 nvm bash向けに書かれてて、zshなどと相性が悪い場合がある。 そういえば、なんかnvmのために.bash_profileを用意していたような気がしていたのと 調べてみたら便利オプションがあったので、nvmからnodebrewに乗り換えてみました。 便利で良いです。 uninstall nvm and in
ここ最近、 [翻訳] Elixir - 次に来る大物Web言語 - Qiita とか 超高速なJSON APIをElixirフレームワークのPhoenixでビルドしてテストしよう | POSTD を読んで気になっていたので、勉強していた。 前提: 自分はシングルページアプリケーションに特化したフロントエンドエンジニアであり、サーバサイドのプロダクション運用にはそこまで強くない。あとこれはここ2日の勉強した日記でもあり誤解や勘違いも多々あると思う。 リアルタイムウェブアプリケーションのためのサーバー Railsの次の時代、リアルタイムウェブの為のウェブフレームワークがあるとしたら、次のような特長をもつと思う。 HTTP, HTTP/2. WebSocket等のプロトコル対応と抽象化 JSON APIに特化 認証系 キャッシュ管理 Viewに関心がない リアルタイムウェブは、その言葉をどう定義
MEANとは、LAMP(Linux, Apache, MySQL, PHP)に変わる技術としてじわじわと注目されはじめているアーキテクチャです。このアーキテクチャMEAN(MongoDB, Express, AngularJS, Node.js)は、シンプルでかつ強力なアーキテクチャで、現在のJavaを利用したアプリケーション開発とは一線を画すところです。HTML5開発にとってJavaの役割が殆どなくなるというのも注目すべき点だと考えます。MEANで一般的に言われる注目すべき事項は次のところです: JavaScriptフルスタックである データモデルとしてクライアントからデータベースに至までJSON そして、この記事を書こうと思ったきっかけですが、2014/10/5(日) Mozilla Open Web Day in Tokyo | Mozilla Japan でのMEAN解説展示で、様
単語を助動詞でつないだだけのタイトルですが、お察しの通り、node.jsをnvmでバージョン管理するレシピを書こうと思った訳です。昨日、rbenvのレシピを書いたので、その続き。同じ構成でまとめておきたいなと。 CookbookはGithubにおいております。 リファレンス VagrantとChef SoloでNode.jsの開発環境を作る ぐぐってみても、ほとんど見つからなかったんですが、こういう構成はあまりニーズがないのかな。。。「Chefでサーバ作って壊す」っていうのを繰り返すことを考えると、確かにバージョン管理の必要性ってあんまりないのかも、、、現場はどうなのか興味あるなー(素人なもので。。。) レシピ 今回はあまり苦労せずにできましたー rbenvと同じく、システム全体にnvmをインストールする感じで、レシピの構成もrbenvに合わせました。 git "/usr/local/nv
Node.vimはNode.jsでのrequire()のパス解釈に従ってVimのgfによるファイルへの移動を行ってくれるVimプラグイン。つまり実際にそのNodeスクリプトで使われるファイルへ移動できるようになる。Go to file! メインの機能であるgfは設定なしですぐ使える。<C-w>gfでタブで開くとかにもちゃんと対応しているので、普通はそのまま何もしなくて良い。gfでタブ開くようにしちゃうみたいな設定はないけど、v0.5.1で加わった専用のユーザー定義Autocommandで上書きできるので~/.vimrcに、 autocmd User Node \ if &filetype == "javascript" | \ nmap <buffer> gf <Plug>NodeTabGotoFile | \ endif と書いておけばタブで開けるようになる。READMEに書いてあるよう
Node.jsのインストールには以下の通りいくつか方法があるようです。 ソースからコンパイル nvmからインストール 公式サイトバイナリをインストール yumでインストール 複数のバージョンを入れられるnvmが便利なのですが、CentOS 5系だとPython 2.7.3を入れる必要があります。また、Node.js v0.8.6からバイナリが提供されるようになりましたが、glibcのバージョンが古いため、実行時にエラーになりました。 yum $ wget http://nodejs.tchol.org/repocfg/el/nodejs-stable-release.noarch.rpm $ yum localinstall --nogpgcheck nodejs-stable-release.noarch.rpm $ yum install nodejs-compat-symlinks
WebSocket を利用したアプリケーションを作る際に、動作確認が煩雑な場合があります。 サーバ側とクライアント側をどちらも実装する必要があって、「ちょっとこの部分だけ動かしてみたいなぁ」っていうときに、簡単に試す方法があると便利ですよね! そんなときにおすすめなのが、 wscat です。 wscat は、コマンドラインで利用できる WebSocket のサーバ/クライアントで、ws に同梱されています。 ws とは、 Node.js 上で WebSocket を使うためのモジュールで、Socket.IO やengine.io の内部でも利用されている今注目のプロダクトです。 今回は、この wscat の使い方をご紹介します。 対象バージョン ws (0.4.7) インストール Node.js のモジュールなので、 npm でインストールするのが簡単です。 $ npm install -
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く