2012-01-24 16 views
2

私は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を防ぐために適切であると考えます。しかし、それは私を大きく悩ます。その周りに合理的な方法がありますか?

答えて

3

見つかった:私が押しているURLは、スラッシュで始まる必要があります。それがすべてです。

0

また、相対URLを使用することもできます。../../Another-Section/1

関連する問題