私はHTML5のHistory API(History.jsを使用)を使用してURLを動的に書き換えています。履歴API - URLを複数のスラッシュで書き換えますか?
http://www.example.com/example/article/page
ここで、「記事」と「ページ」の両方が履歴APIによって設定されています。
しかし、History.jsによって提供されるpushState
またはreplaceState
は、最後のスラッシュの後にあるURLの部分でのみ動作するように見えるため、これは期待どおりに機能しません。
簡単な例:http://www.example.com/example/
にあり、pushState('Article-Title/1')
の場合、URLはhttp://www.example.com/example/Article-Title/1
になります。今ではpushState('2')
でページ番号を変更できますが、私はArticle-Title
の部分を変更する方法がありません。 Ben Luptonのexampleで使用されているwindow.location.href
は、URLを変更することができますが、 "ハード"リダイレクトも発生します。
私はこの制約がXSSを防ぐために適切であると考えます。しかし、それは私を大きく悩ます。その周りに合理的な方法がありますか?