0

ユーザーがGoogleリーダーで直接フィードを購読できるようにするリンクを作成しようとしています(iGoogleオプションをバイパスします)。私はいくつかのターゲットURLを試しました:

それぞれがほとんどの場合期待どおりに機能しているように見えますが、機能しないフィードがいくつかあります。逸脱している要因は、機能しないURLすべてに独自のクエリ文字列があることのようです。1つの例はhttp://majicjungle.com/blog/?feed=atomです。

私にとってさらに奇妙なのは、これらは私が最初にサブスクライブしようとしたときに機能するように見えることですが、ウィンドウを閉じて同じURLに戻ると、機能しません。リダイレクションの前にフィードURIをエンコードしているので、次のようになります。

window.location.replace( 'http://www.google.com/reader/view/feed/' + encodeURIComponent( feed_uri ) );

初めてリダイレクトするhttp://www.google.com/reader/view/feed/http%3A%2F%2Fblog.squirrelapp.com%2F%3Ffeed%3Drss2と、URIコンポーネントが期待どおりにエンコードされてしまいます。ただし、そのウィンドウを閉じてまったく同じ手順を実行すると、最終的にはになりhttp://www.google.com/reader/view/feed/http://blog.squirrelapp.com/?feed=rss2#stream/feed%2Fhttp%3A%2F%2Fblog.squirrelapp.com%2Fます。

フィードのURLがデコードされるだけでなく、Googleリーダーの最後で非常に明白なリダイレクトが発生します。これは、最初の後に毎回発生します。他の誰かがこの経験をしたことがあり、何が起こっているのか、そして/またはそれを修正する方法を知っていますか?

私は何日も試行錯誤の方法(多くの、多くの検索と組み合わせて)に取り組んできました、そして私は物事のエラー側に出てき続けます。どんな助けや洞察も大歓迎です。

4

1 に答える 1

0

URLのフラグメントバージョンを直接使用してみましたか。例:

http://www.google.com/reader/view/#stream/feed/http%3A%2F%2Fblog.squirrelapp.com%2F%3Ffeed%3Drss2

Chromeやその他のブラウザでも同じ問題が発生しないため、URLのエスケープ解除はSafariのバグです。

于 2010-07-20T17:55:27.837 に答える