私のクライアントコード:
リーリー私のサーバー側コード:
リーリーまず最初に、私はバックエンドの初心者であることを念頭に置いてください。ログに記録されたデータを console.log しようとすると、空のオブジェクトが返されます。なぜ req.body が空のオブジェクトを返すのか理解できませんが、action:"/login" を指定して同じことを実行しようとすると、メソッドの場合: form タグ内で「post」すると、期待どおりに動作し、指定した入力が得られます。誰か助けてください、頭が熱くなります、よろしくお願いします。
P粉3331862852024-04-01 09:14:42
req.body
は空です。axios
を使用して送信すると、実際には JSON (application/json
) ペイロードが送信され、バックエンドはJSON ペイロード パーサーはなく、URL エンコードのみがあり、HTML フォームは application/x-www-form-urlencoded
形式で送信するため、機能します。
したがって、axios を使用して URL エンコードされたリクエストを送信する必要があります。これを行うには、URLSearchParams
を使用して JSON オブジェクトをクエリ文字列に変換します。これを試して。
あるいは、JSON パーサーをバックエンドに追加するだけで、組み込みパーサーを使用して生の JSON リクエストが機能します。 リーリー