検索

ホームページ  >  に質問  >  本文

JavaScript - バックグラウンドがアクティブに 404 を返すのはいつですか?

JavaScript 言語 Node.js Express フレームワークを使用して開発された 2 つの質問

1. 通常の状況では、ページはデータを要求します。データが見つからない場合、戻り値は res.send() を使用して書き込まれるべきでしょうか、それとも res.sendStatus(404) であるべきなのでしょうか。どのような状況でサーバーが主導権を持って 404 を返すのでしょうか?

2. フロントエンドはこの 404 をどのように処理し、err.response.status を判断して 404 ページにルートをリンクしますか?しかし、ブラウザは常に not get エラーを報告します

天蓬老师天蓬老师2782日前852

全員に返信(4)返信します

  • 我想大声告诉你

    我想大声告诉你2017-05-16 13:39:32

    1. 404 はリソースが見つからないことを意味します。 RESTful セマンティクスを使用する場合、リソースが見つからない場合は 404 を返す必要があります。 RESTful セマンティクスではない場合は、自分でセマンティクスを作成する必要があります。通常はフロントエンド処理の都合上 200 が返され、メッセージボディにエラー情報が書き込まれます。しかし、これにより別の問題が発生する可能性があります。

    2. それは使用するフレームワークによって異なります。 「しかし、ブラウザは常にエラーを報告しません。あなたの状況がわかりません。」 404はそもそも間違いです。

    独自の API がある場合は、実際には言うのが簡単です。 私が最も嫌いなのは、一部の Web ページがブラウザに直接送信されることです。明らかにそれらは見つかりませんが、「エラー」と呼ばれるページにジャンプするには 200 または 302 を返さなければなりません。中には、私が見る暇もないうちにホームページに飛んでしまう人もいます。 リンクに余分なカンマがありますが、手動で変更できますか?リスト ページに非常に多くのリンクがあり、どれが残っているかを確認するためにクリックしましたが、エラーのあるすべてのリンクが同じページにジャンプしました。どのリンクが無効であるかを確認するにはどうすればよいですか?

    返事
    0
  • ringa_lee

    ringa_lee2017-05-16 13:39:32

    バックエンド処理。
    すべてのルートが一致したら 404 ページを送信します

    返事
    0
  • 習慣沉默

    習慣沉默2017-05-16 13:39:32

    1. バックエンドが 404 で応答する場合、応答本文を返すこともできます。ルートが見つからない場合は、404

    2. を返す必要があります。
    3. フロントエンドには http の 404 ステータスを処理するロジックが必要ですが、その処理方法はさまざまです。ただし、404 ページにジャンプするのは明らかに不適切です。念のためお知らせください

    返事
    0
  • 滿天的星座

    滿天的星座2017-05-16 13:39:32

    ルートは URL に基づいて対応するリソースを見つけられなかったため、404 一致するリソースが見つかりませんを返しました

    返事
    0
  • キャンセル返事