問題タブ [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.

0 投票する
1 に答える
1967 参照

node.js - 検証は許可されていません - hapi js

私はhapi apiフレームワークについてよく聞いていたので、それから始めました。ドキュメントは非常にしっかりしていますが、それでも問題を解決できません:

フォームデータを送信しようとしていて、実際の処理の前に検証したいので、hapi の強力な検証ユーティリティを使用していて、次のエラーが発生しています。

私のコードは次のようになります:

どこが間違っているかご指摘ください。

0 投票する
1 に答える
426 参照

node.js - hapijs でプラグインを 1 回だけインポートして、どこでも使用する

hapi-mongoose-db-connectorhapijs アプリケーションに名前を付けたプラグインを使用する必要があります。リポジトリ ページで、開発者は正しくインポートする方法を提案しています。次の方法は悪い方法であると言われています。

そしてそれを使用することを思いとどまらせます。代わりに、次の方法で行うことをお勧めします。

何もせず、プラグインでマングースを必要とするだけです。npmが必要とするのはシングルトンです(コードは一度だけロードされ、これは非常にうまく機能します)

しかし、彼は例を示していません。この時点で、私はそれを使用する方法がよくわかりません。すべての js ファイルを呼び出すわけではありませんmongoose。アプリケーションのどこかで一度呼び出し、データベースのモデルを作成するjsファイルでそれを使用します。そのような場合のベストプラクティスを知っていますか?

0 投票する
1 に答える
580 参照

javascript - Hapi.js コンテンツ ネゴシエーション

ハピルートでコンテンツネゴシエーションを行い、クライアントが受け入れることができるタイプのデータを返すことができるようにしたいです。

エクスプレスで私はこのようなことをします

ハピでこれを行う組み込みの方法はありますか?API ドキュメントを調べましたが、何も表示されませんでした。独自のソリューションを展開するのに行き詰まっていますか?

0 投票する
1 に答える
2317 参照

node.js - データベースにアクセスせずに Hapijs エンドポイントをテストする

Hapi jsを使用してrestApiを開発しています。プロジェクトの構造は次のようになります。

p>

認証リクエストは routes.js にヒットし、authHandler.js に転送され、authHandler.js は次に userDb.js を呼び出します。userDb.js はデータベースと対話し、クライアントに応答を返す authHandler.js に結果を返します。

userDb.js がデータベースと通信しないテストを作成しようとしています

このために、実際にサーバーを起動せずにルートを呼び出すことができるように、Hapi の注入を使用しています。ダミーの応答を提供できるように、呼び出しチェーンでデータベースをモックする方法を理解するのに苦労しています。

要するに、テスト時に userDb.js をモックに置き換えてほしいということです。

0 投票する
1 に答える
14549 参照

node.js - joi validation: 条件付きで配列の最小長を設定する

条件が満たされたときに少なくとも 1 つの要素があることを確認したい配列フィールドがあります。

「then」フィールドを Joi.required().min(1) で変更すると、エラーが発生します。

Joiでこれを行うことはできますか?

0 投票する
1 に答える
1508 参照

javascript - nodejs hapiJs: クライアントからのデータの送信、受信

次のファイルがあります。client.js と server.js。ajax を使用して、サーバーにデータを送信したいと考えています。検索したユーザー名をなんとか送信できましたが、ドメインはサーバーで未定義として受信されました。クライアント側、サーバー側、またはその両方で何か不足しているのかどうかわかりません。サーバー側では、私の関数は、任意のドメインを受信し、そのドメインでリクエストを発行できるようにするための汎用関数である必要があります。誰でも助けてもらえますか?

クライアント:

サーバ: