問題タブ [koa2]

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 投票する
3 に答える
3462 参照

javascript - KOA 2 で非同期ミドルウェアを作成する方法

Promise を解決してから、Koa 2 でそのようにビューをレンダリングしたいと考えています。

ただし、これを行うと、サーバーは応答を送信しません (ブラウザーは応答を待機し続け、タイムアウトします)。私は何を間違っていますか?

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

javascript - サインアップ後に、ctx.body からのトークンではなく、koa.js が 404 "Not Found" を返す

xhr エージェントsay andtokenを使用してミドルウェアから実際に取得するためにmy を返すことができませんユーザーをサインアップした後。supertestpostman

認証されたリクエストを作成できるように、ボディから jwt を取得しようとしていますが、何らかの理由で「見つかりません」というメッセージが表示され続けます。

私のコードを見てください..

サインアップルート

/signupルートについて重要なことは、渡されたミドルウェアsignUpにアクセスできるようになった後にミドルウェアを追加する場合ですが、それを公開することはできません。または、方法がわかりませんctx.response.bodysignUp

およびsignUp ミドルウェア

これによりデータが正常に保存されたことに言及する必要があります。データベースをチェックインするとconsole.logsctx.response.body次のミドルウェアsignUpで生成されたトークンも表示されます。

/signupを次のコードでテストします。

私のエラーの完全なスタック トレースは次のとおりです。

テストのみですが、postman を使用すると問題なく動作します。私が正しくやっていないことがありますか?

を使用してkoa: 2.0.0おりsupertest: 2.0.1、ルートにkoa-rest-router: 1.0.0.

助けてください!ありがとう。

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

javascript - この未定義: ジェネレーターへの非同期の可能性の問題

私は'client' undefinedfirebase restトランザクションに使用しているライブラリから取得しています.これは、以前に問題なく使用したと確信しているライブラリです. ライブラリを見ると (intellij websphere デバッガーは typescript ファイルに移動します。マップに対応している必要があります)、this.client呼び出しているクラス メソッドに ... が表示されるので、これは確実に定義する必要があります。

それで、別のライブラリを手に入れました。たまたますべて 1 つのファイルだったので、それを src/ フォルダーに直接置くことができました (他の壊れた車輪が横たわっているのに、なぜフラットを修理する必要があるのでしょうか?) そして .. 同じこと (今回はthis.urlライブラリが異なるためです)。

基本的な構造次の理由で機能します: (コメント化されたコードをインライン Promise と比較します)

その約束はうまく機能します。私は自分のAPI URLにアクセスし{"foo":"bar"}、1秒後に取得しました。コンソールには が表示されずundefined this、 が報告されますinner this: [object Object]

2 つのファイル全体を以下に示します (このスニペットは firebaseDb.js からのもので、単なるデモンストレーションであるため、以下には表示されません)。

firebaseDb.js

restful-firebase.js

(変更された npm i rest-firebase、tx 呼び出しでパスを受け入れ、デバッグに厳密を使用しない):

関与する可能性のある「魔法」のいくつか:

私の.babelrc

私のgulpfile:

それらは restful-firebase.js に対してこれを行います:

具体的には、未定義のコードのセクションでthis、エラーをスローするのは次の 3 行目です。

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

node.js - koajs を使用して http 応答を送信する方法

Facebook経由でWebhookを検証しようとしています。したがって、Facebookmy-url/facebook/receiveは nodejs のルート内で私の URL にヒットres.send(req.query['hub.challenge']);し、http 応答を送信します。

KoaJSを使用しています。私が理解していることから、Koajs は要求と応答オブジェクトをマージしますが、ドキュメントを読んでいると、http 応答を送信するためctxの行に沿って何かを見つけることができません。ctx.send

誰でも私に方向性やリンクを教えてもらえますか。

ありがとう。

0 投票する
2 に答える
52 参照

koa - この Koajs エラーはいつ発生しますか

私は Koa について理解を深めようとしており、小さな進歩を遂げています。現時点では、このコードを理解していると思います

エラーを処理するコールバックを用意する代わりに、そのキャッチに上流に移動します。しかし、上記のエラーを実行させたいと思います。

エラーをシミュレートするにはどうすればよいですか

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

javascript - koa の ctx.body として http.request から応答本文を取得する方法は?

私はNode.jsを学んでいますが、何らかの理由で別のIPにhttp.requestを設定し、そこからの応答を取得してkoaのctx.bodyに適用する必要があります。私は次のようにコードを書きました:

コントローラー マッピングの使用方法を学習すると機能し、resData は正しいデータです。しかし、Web ページから「GET /refreshDataGet」を実行すると、「ステータス 0」しか取得できません。http.request を実行せず、JSON オブジェクトを ctx.body に直接適用すると、Web ページで正しいステータスとデータを取得できます。私は何か見落としてますか?または、これを実行するためのより良い解決策はありますか?

ありがとう!!


編集: 404 を返します。手動で 200 に設定すると、応答本文に何も見つかりません。しかし、デバッグ出力は内部で正しいです

res.on('終了', 関数(){})