私はVKontakteウィジェットがパラメータをキャッシュするのが好きです

「いいね」ウィジェットの機能は誰でも知っていると思います。 説明する無知な人の数については、ウィジェットは同じ名前のボタンをHTMLページに追加し、クリックするとカウンターが増加します。 ユーザーは、自分のVKontakteウォールのページについて話すこともできます。 多くの人がこのウィジェットを使用していますが、無料のインターネットには深刻な水中の岩についての言及が1つもありません。 実際、最初に使用した後、ウィジェットのパラメーターはVKontakteサーバーに永久にキャッシュされ、カウンターをリセットせずにそれらを変更する方法はありません。



問題を実証するには、VK開発者向けの公式ページからウィジェットの標準スクリプトを取得します。



<!-- Put this script tag to the <head> of your page --> <script type="text/javascript" src="http://vk.com/js/api/openapi.js?64"></script> <script type="text/javascript"> VK.init({apiId: YOUR_APP_ID, onlyWidgets: true}); </script> <!-- Put this div tag to the place, where the Like block will be --> <div id="vk_like"></div> <script type="text/javascript"> VK.Widgets.Like("vk_like", {type: "full", pageTitle: "TEST_TITLE", pageDescription: "TEST_DESC"}); </script>
      
      







VKアプリケーションのドメインにあるページにこのコードを挿入する必要があります。 たとえば、アプリケーションの場合、ベースドメインexample.comが選択され、ページはこのドメインまたはそのサブドメインのいずれかに配置する必要があります。example.com/ vktest.html、local.example.com / vktest.htmlなど。



ボタン、承認、および「Tell Friends」をクリックすると、VKontakteウォールに適切なエントリが表示されます。 ページに戻り、「いいね」をもう一度クリックします。カウンターがゼロにリセットされ、壁からの録音が消えます。 問題は解決しましたか? 他のウィジェット設定を確認、変更できます。



 VK.Widgets.Like("vk_like", {type: "full", pageTitle: "REAL_TITLE", pageDescription: "REAL_DESC"});
      
      







ページを更新し、「いいね」と「友達に教える」をクリックします。 すべてのテストで、古いTEST_TITLEとTEST_DESCを見ました。



もちろん、この例はあまり正確ではありません。 おそらくしばらく待つだけで十分で、使用回数がゼロのウィジェットのキャッシュは自動的にリセットされます。 ただし、これは問題のすばらしいデモンストレーションです。 テストデータを使用してウィジェットをセットアップし、カウンターがゼロより大きい場合、ウィジェットの設定を変更することはできません。 ウィジェットのオプションには、タイトル、説明、画像が含まれます。



これらのパラメーターを更新する唯一の方法は、カウンターをリセットすることです。 これらは私に報告されました。 VKサポート:







3番目のパラメーターpage_idを指定するか、ページURLを変更することにより、カウンターをリセットできます。 明らかに、これは500以上のいいね!があるページには適していません。



いくつかのソーシャルネットワークの統合を開発しました。 私はこのような迷惑に遭遇したのは初めてだと言わなければなりません。 はい、前回システムでキャッシュをリセットできないことを見たことは覚えていません。 さらに、VKontakteのドキュメントではこの機能について一言も言われていません。



統合開発者向けのヒント-example.com/fake.htmlなどの偽のURLでウィジェットをテストします。 または、ページを解放する前にpage_idを変更します。



VKontakte開発者サイトにあるウィジェットのドキュメント。



All Articles