[解決済み] ReferenceError: リクエストが定義されていません。
2022-02-09 07:09:43
質問
を再現しようとしています。
フェイスブックメッセンジャーボット
が表示され続けます。
request is not defined
.
facebookと同じコードです。
function callSendAPI(messageData) {
request({
uri: 'https://graph.facebook.com/v2.6/me/messages',
qs: { access_token: PAGE_ACCESS_TOKEN },
method: 'POST',
json: messageData
}, function (error, response, body) {
if (!error && response.statusCode == 200) {
var recipientId = body.recipient_id;
var messageId = body.message_id;
console.log("Successfully sent generic message with id %s to recipient %s",
messageId, recipientId);
} else {
console.error("Unable to send message.");
console.error(response);
console.error(error);
}
});
}
私のノード
server.js
はこのようになります。
const express = require('express');
const bodyParser = require('body-parser');
//const request = express.request;
const PAGE_ACCESS_TOKEN = 'abc';
let app = express();
app.use(bodyParser.urlencoded({ extended: false }));
// parse application/json
app.use(bodyParser.json());
[...]
function sendTextMessage(recipientId, messageText) {
var messageData = {
recipient: {
id: recipientId
},
message: {
text: messageText
}
};
callSendAPI(messageData);
}
function callSendAPI(messageData) {..}
[...]
エクスプレスで何か見落としているのでしょうか?ありがとうございます。
解決方法は?
この例では サードパーティリクエストモジュール .
を使用することもできます。
ネイティブリクエスト
というように
require('http').request()
を使用することも可能です。
リクエスト
モジュールは非常に一般的で、使い勝手の良いツールです。
あなたの
request
を指しており、これはコメントアウトされています。
express.request
. のように使用すると
request()
は関数ではないので、エラーを投げます。ですから、本当は Request モジュールを使うか、ネイティブの
http.request
.
2020年のアップデート
リクエストモジュールは現在非推奨なので、この回答を読んでいる方は、ネイティブモジュールを使うか、Axiosなどの人気のあるサードパーティライブラリを探してみてください。
関連
-
[解決済み】 console.logの出力をどこに永久保存するか?
-
[解決済み] 非推奨パッケージに関するNPM警告メッセージ
-
[解決済み】ENOENT, そのようなファイルまたはディレクトリがありません。
-
[解決済み] joiライブラリを使用して2つの時間を比較する方法
-
[解決済み] nodejs - http.requestでresponse.writeを使用する場合、第一引数は文字列またはBufferでなければなりません。
-
[解決済み] express は `body-parser deprecated undefined extended` としてエラーを投げます。
-
[解決済み] DynamoDBで一括削除するにはどうしたらいいですか?
-
[解決済み] Babel 6 regeneratorRuntimeが定義されていません。
-
[解決済み] Node.jsで「ReferenceError: primordials is not defined」を修正する方法
-
[解決済み] Node.js上のクライアント。Uncaught ReferenceError: require は定義されていません。
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】「安全なTLS接続が確立される前にクライアントのネットワークソケットが切断されました」(ノード10
-
[解決済み】ブロックスコープの宣言は、ストリクトモード以外ではまだサポートされていません。
-
[解決済み】Mongooseで配列の値を更新する方法
-
[解決済み] のエラーが発生しました。これはおそらくnpmの問題ではありません。上に追加のログ出力があると思われます
-
[解決済み] Expectアサーションの型エラー -> expect(...).toExistは関数ではない
-
[解決済み] Node.jsのホスト名/IPが証明書のaltnamesと一致しない
-
[解決済み] EventEmitter のメモリリークの可能性が検出された
-
[解決済み] http-server コマンドが見つかりません。
-
[解決済み] nvm は npm config の "prefix" オプションと互換性がありません。
-
[解決済み] "致命的なエラーです。grunt "コマンドを実行すると、"Unable to find local grunt. "と表示されます。