4

stackoverflow の質問 URL には、サーブレット、id#、およびタイトルが含まれています...

stackoverflow.com/questions/824349/modify-the-url-without-reloading-the-page

私のウェブサイトは、URL と同じように機能します...

localhost:8443/user/1/admin

ユーザー情報を取得するためにバックエンドで実行するクエリには、ID 番号のみが必要です。その後のユーザー名は表示用です。したがって、これをブラウザに入力するlocalhost:8443/user/1/aと、これとまったく同じページが表示されますlocalhost:8443/user/1/admin

Stackoverflow は、URL の最後の部分が欠落していることに気づき、追加し直すことができます。これをアドレスバーに入れると

stackoverflow.com/questions/824349/modify

彼らはこれを動的に変更します

stackoverflow.com/questions/824349/modify-the-url-without-reloading-the-page

今、stackoverflowでURLを動的に変更することについて読んでいて、誰もが参照し続けていた history.pushstateので試してみました。これの問題は、履歴スタックに間違った URL を追加することです。私が達成したいのは、URL をあるべきパスに変更し、履歴スタックに間違った URL を含めないようにすることです。したがって、ユーザーが戻ることを決定した場合、最後に表示されていた実際のページに戻りますstackoverflow.com/questions/824349/modify。スタックオーバーフローと同じように。どうすればこれを行うことができますか!?

4

2 に答える 2

2

replaceState メソッドを確認してください。

于 2013-04-17T03:00:34.217 に答える
1

history.pushState の代わりに history.replaceState を使用してみてください

于 2013-04-17T03:10:35.433 に答える