Chromeウェブストアにて PS Store TitleID Link Redirector を公開しました。
(GitHub)
以下のような、2020年10月のPS Storeリニューアル以降に機能しなくなったtidパラメータ付きのURLにアクセスした場合に、製品ページへのリダイレクトを試みる拡張機能です。
https://store.playstation.com/#!/tid=CUSA00744_00
この形のURLはPS4のシェア機能が生成する物で、現行のストアのAPIはタイトルIDに対応していないのでトップページが表示されると思います。 公開した拡張機能では、URL中のタイトルIDをchihiroに投げてjsonを取得し、そこからプロダクトIDを取得します。 chihiroに必要な国コード/言語コードは、URL中にある場合はそれを使用し、無い場合はオプションで指定した物が使用されます。
あまり深く考えずにとりあえず動けば良いって感じで作ったので、ちゃんと機能しなかったらごめんなさい。
というかそもそも需要が全く無い気がします。
ところで、declarativeNetRequest API のルールにマッチした際のイベントがデバッグ目的でしか使えないonRuleMatchedDebug しかないのは酷い。ストアで公開しないならそれ使えば良いんでしょうが…
更にdeclarativeNetRequestでマッチしたURLをリダイレクト先のURLに含めようと思っても、拡張機能の持つリソースにリダイレクトしたい場合は正規表現の一致箇所を渡せないという残念な仕様。
(extensionPath で正規表現は使えず、一致箇所は regexSubstitution でしか渡せない。)
(拡張機能のIDを含むURLを決め打ちする場合はregexSubstitutionが使えるようですが…)
結局、対象のURLを webNavigation API の onBeforeNavigate で取るようにしました。
(GitHub)
以下のような、2020年10月のPS Storeリニューアル以降に機能しなくなったtidパラメータ付きのURLにアクセスした場合に、製品ページへのリダイレクトを試みる拡張機能です。
https://store.playstation.com/#!/tid=CUSA00744_00
この形のURLはPS4のシェア機能が生成する物で、現行のストアのAPIはタイトルIDに対応していないのでトップページが表示されると思います。 公開した拡張機能では、URL中のタイトルIDをchihiroに投げてjsonを取得し、そこからプロダクトIDを取得します。 chihiroに必要な国コード/言語コードは、URL中にある場合はそれを使用し、無い場合はオプションで指定した物が使用されます。
あまり深く考えずにとりあえず動けば良いって感じで作ったので、ちゃんと機能しなかったらごめんなさい。
というかそもそも需要が全く無い気がします。
ところで、declarativeNetRequest API のルールにマッチした際のイベントがデバッグ目的でしか使えないonRuleMatchedDebug しかないのは酷い。ストアで公開しないならそれ使えば良いんでしょうが…
更にdeclarativeNetRequestでマッチしたURLをリダイレクト先のURLに含めようと思っても、拡張機能の持つリソースにリダイレクトしたい場合は正規表現の一致箇所を渡せないという残念な仕様。
(extensionPath で正規表現は使えず、一致箇所は regexSubstitution でしか渡せない。)
(拡張機能のIDを含むURLを決め打ちする場合はregexSubstitutionが使えるようですが…)
結局、対象のURLを webNavigation API の onBeforeNavigate で取るようにしました。
