4

フェイスブックのようなボタンをASP.NETページに追加しようとしています。Get Like Button Code Widgetを使用してコードを生成し、マスターページにコピーしました。「いいね」ボタンはほとんどの場合正常に機能しますが、一部のランダムなページでは機能しません。Chromeの開発ツールjavascriptコンソールを使用してjavascriptエラーをチェックしましたが、何も発生していないようです(FFとIEでも同じ問題が発生します)。

さらに奇妙なことに、mysite.com / category / 12345 / some-descriptive-nameなどのURLを参照して、問題を確認できます。しかし、URLの末尾から数文字をノックすると(例:mysite.com/category/12345/some-descriptive-na)、問題は解消されます[IDが同じである限り、URLリダイレクトを使用しています。ページが表示されます]。

私の最善のアイデアは、URLの最大長に到達することでしたが、上記のURLのIDを変更するだけでも期待どおりに機能するため、問題にはならないようです。

HTML5バージョンとXBFMLバージョンのいいねボタンの両方を試しましたが、どちらも同じ問題があります。

私が思いつくことができる他の唯一のことは、それがより信頼できるものになることを期待してappIdを生成することです。

現時点では、公開されているサイトを紹介することはできませんが、コードは次のとおりです。

...
<body class="clearfix">
<div id="fb-root"></div>
<script>(function(d, s, id) {
  var js, fjs = d.getElementsByTagName(s)[0];
  if (d.getElementById(id)) return;
  js = d.createElement(s); js.id = id;
  js.src = "//connect.facebook.net/en_GB/all.js#xfbml=1";
  fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));</script>
...
<div class="fb-like" data-send="false" data-layout="button_count" data-width="450" data-show-faces="false" data-font="segoe ui"></div>
4

1 に答える 1

2

このSOの答えは、私を正しい方向に向けました。実際に機能していたリンクでそのツールを使用すると、そのリンクでいいねボタンが機能しなくなりました。結果を詳しく見てみると、リダイレクト セクションがあり、FB がログイン ページにリダイレクトされていました。

この問題は、ロックダウンされたテスト サイトで確認されました。フォーム認証を一時的に削除してから、lint を介してリンクを実行すると、問題が解決しました。

于 2012-09-08T08:07:03.097 に答える