問題タブ [hapijs]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
javascript - Hapi.js ファイルのアップロード imageMagick コマンド ライン ツールを使用できるように、ファイルを取得するにはどうすればよいですか
ストリームではなくファイルを出力するようにコードを変更しました。IT は私に tmp パスを提供し、fs.readFile を使用すると、文字列に変換されたときのデータは次のようになります。
私はhapijsサーバーにファイルを投稿しています。これは投稿を処理する私のルートです:
これは私の request.payload です
私は実際に /tmp/ フォルダーを確認し、ファイルを開いた唯一のものを開きました
/tmp/1415580285921-24240-2cc7987f4fd124ac
has is fileUpload=Resume_BrianInoa.pdf ファイルが正しくアップロードされない
私のフォームのhtmlコード
javascript - Hapijs 、 fs.readfile 、 fs.writefile 、および childprocess.exec 非同期を制御するにはどうすればよいですか?
このコード リストを実行すると、非同期呼び出しが正しく行われていないのはなぜですか? 私は物事を動かし、それらを機能に分割してきましたが、実行間でまだ競争が続いています。
実行したい順序はネストにありますが、機能していないため何か問題があると思います。
node-modules - hapi.js プラグインと nodejs モジュールの違いは何ですか
ハピに慣れ始めたところです。Hapi はプラグインを使用してアプリケーションにコンポーネントを追加します。次のようなことができるときにプラグインを使用する理由を理解するのに苦労しています:
2つの違いは何ですか?
node.js - 歯痛hapiプラグインで作成された2つのモデル間の関係をモデル化するにはどうすればよいですか?
Hapiフレームワークを使用してノード サーバーを構築しており、 toothacheプラグインを使用して MongoDB の CRUD エンドポイントを作成しようとしていますが、2 つのオブジェクト間の関係を作成する方法が一生わかりません。 .
アプリを非常に単純なシナリオに減らしました。
著者用と書籍用の 2 つの CRUD スキーマがあります。本には著者の ID が含まれていますが、名前は含まれていません。問題は、著者の名前も含む本を返すルートをどのように書くことができるかということです。
両方のスキーマに歯痛を適用し、2 つのモデルを取得します。
特定の本を取得するルートは次のようになります。
そして戻ります:
次のような回答を得るために、同じハンドラーで Author モデルに問い合わせるにはどうすればよいでしょうか。
歯痛プラグインはリレーショナル データのモデル化を非常に困難にしているように見えますが、これは残念なことです。現実の世界では、埋め込み配列しか持つことができず、正規化されたデータを使用せざるを得ないからです。私は本当にそれでいくつかの助けをいただければ幸いです. 前もって感謝します!
node.js - ハピでその場でコーヒースクリプトをコンパイルしますか?
要求に応じてcoffeescriptをJSにコンパイルするhapi用のプラグインはありますか?
私は connect-coffee-script とcoffee-middlewareを認識しており、接続上に構築されていないと思われるhapiで動作するものを探しています。
javascript - hapi js を使用してユーザーごとのログを作成する方法
winston ロギング フレームワークとログ レベルに基づくロギングを使用していますが、バグを追跡するのが困難になっています。そこで、ユーザーごとにログオンすることにしましたが、ここで問題が発生しました。
私は何を達成したいですか?
- すべてのユーザーのログ ファイルが 1 時間ごとに生成されます。(このスレッドでは毎時の制約をスキップできます)、すべてのユーザーは一意の識別子「uid」を持っています。
私は何を持っていますか?
- ここで使用されているアーキテクチャに従っています ' https://github.com/agendor/sample-hapi-rest-api '。いくつかの追加の lib モジュールも存在します。
- 現在、私は winston ライブラリを使用しています (ただし、必要に応じてこれを置き換える余裕があります)。
流れの簡単な紹介
- 現在、ハンドラー関数でのみ要求オブジェクトにアクセスできますが、DAO、ライブラリ関数でもイベントをログに記録したいです (ユーザーごとに)。「Uid」は、認証ミドルウェアのリクエストに uid を入れると、リクエスト オブジェクトのハンドラ関数で使用できます。
私の解決策(エレガントではありません)
- 要求オブジェクト (または uid のみ) をすべての関数に渡し、(winston を使用して) イベントをログに記録します。カスタム トランスポートは、ログをどこに (uid に基づいて、どのファイルに) 配置するかを決定します。確かに、これはエレガントな方法ではありません。イベントをログに記録するには、すべての関数に uid パラメータが必要です。これは悪いようです。
私はあなたから何をしたいですか?
- スケーラブルでもある、より優れたエレガントなアプローチ。
node.js - ハピへの統合を継続する
エクスプレスでsequelize.jsを使用する素晴らしい例がたくさんあります。hapijs を使用してsequelizeを使用している人がいるのだろうか、そして全体を無痛にする方法. それらを連携させるにはどうすればよいですか?