web-dev-qa-db-ja.com

Express 4.14-カスタムメッセージで200ステータスを送信する方法

Express 4.14でステータスとメッセージを送信するにはどうすればよいですか?

For:res.sendStatus(200);

ブラウザで問題ありませんが、次のようなカスタムメッセージを表示したいです:Success 1

res.sendStatus(200);
res.send('Success 1');

エラー:

エラー:送信後にヘッダーを設定できません。

this の場合

res.status(200).send(1);

エラー:

廃止予定のres.send(status):代わりにres.sendStatus(status)を使用します

何か案は?

19
laukok

次を使用できます。

res.status(200).send('some text');

番号をsendメソッドに渡したい場合は、非推奨のエラーメッセージを回避するために、最初に文字列に変換します。

非推奨は、ステータスを直接sendに送信することです。

res.send(200) // <- is deprecated

[〜#〜] btw [〜#〜]-デフォルトのステータスは200なので、res.send( 'Success 1')を使用できます。他のステータスコードにのみ.status()を使用します

40
Dima Grossman

正確なコードを使用している場合、最後のエラーが発生することはありません。

res.status(200).send('Success 1')

私の推測では、文字列"Success 1"を使用せず、代わりに数値変数または数値を使用しています。

let value = 123;
res.status(200).send(value);

would警告をトリガーします。代わりに、valueが文字列化されていることを確認してください。

let value = 123;
res.status(200).send(String(value));  
4
robertklep