問題タブ [requestjs]
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 - リクエストを使用して API の結果を取得し、Hubot レスポンスに統合する
JIRA Webhook をリッスンし、新しいチケットが作成されたときに部屋でアナウンスする Hubot プラグインがあります。
これを拡張して、リモート API に対してルックアップを実行したいと思います。基本的に、ルックアップしたい追加情報があり、次に渡すメッセージに追加しますroom.messageRoom
。ダイジェストのサポートが必要なので、リクエストを使用しています。
したがって、次のスニペットは単独で問題なく動作します。
そして、これが私の JS/Node の新しさが出てくるところです...笑。
コールバック内で応答を処理できますが、そのコールバックの外でアクセスする方法は本当にわかりますか?
そして、これを webhook 処理コードにどのように統合する必要がありますか? スニペットを if ブロック内に移動して、変数に割り当てるだけですか?
node.js - 信じられないほど遅いアウトバウンド HTTPS リクエスト
RESTful レイヤーのフロントエンドとして Express 4.13.3 で Node 0.12.2 を使用しています。cURL/Postman から API を呼び出すには、最大 9 ミリ秒かかります。ただし、Request 2.60.0 を使用してノードから呼び出しを行うと、最大 60 ミリ秒かかります。これらは HTTPS 呼び出しです。HTTPS を削除して HTTP のみを使用すると、Node は最大 7 ミリ秒に短縮されます。curl/Postman 呼び出しと Node.js 呼び出しの両方が、同じ環境の同じマシンで無負荷で発生しています。ノードが他のすべてよりもはるかに遅くなる原因を見つけることができないようです。どんな助けでも大歓迎です。
node.js - node.js の ForEach 内の非同期リクエスト
私はnode.js(およびrequest.js)が初めてです。異なるパスを持つ特定の URL から Web サイトの本文を取得したいと思います (以下の例ではhttp://www.example.com/path1、http://www.example.com/path2など)。 )、このデータをキーと値のマッピングを使用してオブジェクトに記録します(以下の siteData[path])。
私の質問は次のとおりです。
- if ステートメント (index === length) は、非同期要求が終了したかどうかを判断する正しい方法のようには見えません。リクエストが終了したかどうかを正しく確認するにはどうすればよいですか?
- 上記のコードを実行すると、
(node) warning: possible EventEmitter memory leak detected. 11 unpipe listeners added. Use emitter.setMaxListeners() to increase limit.
チェーンを試行しましrequest(url, function(...){}).setMaxListeners(100);
たが、うまくいきませんでしたというエラーが表示されます。
ご協力いただきありがとうございます!
node.js - requestjs が Firefox で動作する自己署名 SSL 証明書を拒否するのはなぜですか?
これが状況です。自己署名 CA 証明書を作成し、それを使用して、https で使用する 2 つ目の証明書に署名しました。Web サーバーは、SSL ターミネーションと Expressjs アプリケーションへのリバース プロキシを行う nginx です。信頼チェーンが正しいことを確認するために、Firefox に CA をインストールし、予想どおり、警告なしで https 経由で Web サイトにアクセスできました。さらに、サーバーの証明書をopenssl x509 -in server.crt -text -noout
で調べると、予想される発行者と、特にサブジェクトの予想される共通名の両方が表示されます。(注: ここで使用されている共通名は IP アドレスです。これは、問題を引き起こす可能性があるためです。)
しかし、requestjs を使用して nodejs スクリプト経由でサーバーにアクセスしようとすると、うまくいきません。スクリプトでは、次のようなコードを使用して CA 証明書が読み込まれます。
しかし、私はこのエラーを受け取ります (読みやすくするために改行、オリジナルは 1 行です):
「証明書のリスト」が空だと言っているように見えるのは特に疑わしいです。オプションでの使用rejectUnauthorized: false
は他の回答で提案されていますが、ID 検証が必要なため、このアプリケーションには最適なオプションではありません。
requestjs/nodejs がこの証明書を信頼するようにするにはどうすればよいですか?
によって報告されたサーバー証明書の内容openssl x509 -text
そして、その証明書を生成するために使用される構成ファイル:
javascript - requestjs レスポンスを変数に割り当てる
request.get('http://someurl/file.json', function(err, response, body) {})
の本体を変数にどのように割り当てますか?
例えば:
ファイル.json
app.js
前もって感謝します :)
node.js - Node.js と Requestjs: Transform ストリームをアップロード用のファイルとして Request.js にパイプします。
node-archiver ( https://github.com/archiverjs/node-archiver ) を使用してメモリ上に zip ファイルを作成しています。アーカイバーのパイプ機能を使用して、すべてを Transform ストリームにパイプします。必要に応じて、このストリームをファイルにパイプできますが、リクエスト ( https://github.com/request ) にこのストリームを読み取らせたいので、ファイル システムにアクセスする必要はありません。
以下では、私の変換ストリームは と呼ばれbridge
ます。Transform で特別なことは何もしていません (PassThrough ストリームである可能性もあると思います)。
これは機能しません (file
パーツが空のようです)。ただし、ブリッジ変換ストリームをファイル書き込みストリームにパイプすると、ストリームが終了した後、フォーム ファイル操作でそのファイルへの読み取りストリームを作成すると、機能します。もちろん、今では完全に形成されたファイルがあり、request
それを読み取ることができるためです (ここではブリッジは必要ありません。通常のfs
ストリームだけです) 。
読み取りストリームがファイルストリームである必要があるかどうかrequest
、そしてここで他に何が間違っている可能性があるのでしょうか。