問題タブ [npm-request]

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

node.js - ストリームをパイプするときにノード PUT 要求で Content-Length ヘッダーを設定する方法

署名付き URL を介してノード ストリーム データを S3 にアップロードしようとしているため、リクエストにContent-LengthandContent-Typeヘッダーが含まれていることが重要です。

アップロードしたいデータはストリーム経由で提供されます

ストリームの長さにアクセスできないため、ファイルにパイプして長さを確認し、2 番目のステップでファイル ストリームをパイプすることで回避策を実行できますが、これを達成するためのより良い方法があるはずです。

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

javascript - エンコードされた formData 値に基づいてノード リクエスト ヘッダーを設定する

requestnpm パッケージを使用して、リクエスト本文の文字列表現の base64 エンコード MD5 ハッシュで構成される特別なヘッダーを必要とする API に、HTTP POST を送信しようとしています。

MD5 ハッシュを生成するコード:

formData がない場合、GET または DELETE リクエストの場合、使用することになっている値は空の文字列であり、うまく機能します。API はヘッダーを受け取り、要求されたデータを返します。

残念ながら、formDataオプションを使用してファイルを投稿すると、オブジェクトはrequestモジュールによってエンコードされます。そのため、サーバーが私の MD5 ハッシュをサーバー側で受信した本文と比較すると、一致せず、エラーがスローされます。

必要なものの単純化された要求:

上記の例では、formData 変数がオブジェクトであり、cryptoモジュールが文字列を想定しているため、エラーがスローされます。formData オブジェクトを文字列に変換するコードを手動で書き始めましたが、requestモジュールによって既に行われているときに、すべてのフォーム値をエンコードするすべてのロジックを書き直すのは少しばかげているようです。

モジュールによって処理された後、リクエストが実際に送信される前に、正確にエンコードされたフォームのコンテンツを取得する信頼できる方法を探しているので、ハッシュ値を作成してヘッダーを追加できます。request

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

node.js - Meteor: パッケージ useraccounts:bootstrap を追加できません - npm.depends エラー

useraccounts:bootstrap を meteor プロジェクトに追加しようとすると、次のエラーが表示されます...

これを修正するにはどうすればよいですか?

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

node.js - nodejs-request での複数の非同期呼び出し中に元のリクエスト オブジェクトを取得する

nodejsアプリに複数のHTTPリクエストがあり、それぞれが文の単語を返します。返信が来るタイミングがバラバラなので、元の文の単語索引をキーにして辞書に保存しています。問題は、リクエスト オブジェクトにアクセスすると、最後のオブジェクトしか取得できないことです。

基本的に、object.indexオブジェクトにアクセスすると、返されるオブジェクトは元のリクエストに使用されたものではなく、最後のものです (何らかの理由で)。これをどのように解決すればよいですか?

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

javascript - nodejs リクエスト - toString の失敗 - 大きなファイルのバッファ サイズの問題 (maxBufferSize)

150K レコードの大きなファイルを要求していますが、「toString に失敗しました」というエラーがスローされます。nodejs/node#3175によると、maxBufferSize が原因です。リクエストは 200 レコードでうまく機能しますが、それは外部 API であり、要件はすべてのレコードを一度に取得することです。

私はすでにここでこの質問をしました

編集:

toString failedしかし、メッセージ以外のコンソールには何も表示されません

0 投票する
0 に答える
462 参照

node.js - NodeJs 要求モジュールのランタイム エラー: ./..../tough-cookie/package.json

NodeJs モジュールをインストールすると、実行にバグがあります。

requestモジュールは最新バージョンです:

私を助けてください。

0 投票する
0 に答える
271 参照

node.js - NODE.JS- node を使用して IMDB から映画をスクレイピングしようとしています。コンソールに映画の名前を入力しようとすると、動的にスクレイピングされません

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

javascript - Meteor 1.3でリクエストnpmモジュール同期を使用する

Meteor 1.3.2.4 でリクエスト npm パッケージを同期として使用しようとしています。

この Meteor ガイドの記事に基づいて、最初にMeteor.bindEnvironment以下のように使用してみます。

しかし、それはまだ非同期呼び出しのようです。

次のステップでは、流星フォーラムのこの回答Meteor.wrapAsyncに基づいて使用しようとします。これは次の試行コードです:

このコードは、リクエストにエラーが含まれていることを除いて正常に機能します。リクエストにエラーが含まれている場合 (たとえば、URL が正しくない)、次の例外で中断されます。

今、私は2つの質問があります:

  1. 上記のコードを修正するには?
  2. このアプローチは、Meteor でリクエスト npm モジュール同期を使用する最良の方法ですか、それともより良い方法を知っていますか?