VKontakteによる承認

サイトユーザーの何パーセントがVKユーザーでもありますか? あなたの意見では、何百人も何も書いたり、コメントしたり、追加したりしません(必要に応じて下線を引く)。 VKontakteとOpen APIをscる前に、これら2つの質問に答えることを提案します。



私の場合、毎日約1,500人がVKontakteからサイトにアクセスし、登録するための簡単で便利な方法を提供することが私の義務であるように思えます。



何か新しいものを開くことはまずありませんが、この記事の後に少なくとももう1つのサイトがもう少し便利になったら、このテキストを書く時間を無駄にしていないことを意味します。



PHPのサイト用にOpen authorization APIモジュールを作成したので、すべてのコードがそこにあります。 Django に関する記事もありまし



最も単純な例のソースコードは、 githubで入手できます。 ここでは転載しませんが、その仕組みを簡単に説明します。



主な作業は、3つのメソッドを含むAuth_Vkontakteクラスによって実行されます。



もちろん、vkontakteサポートをサイトエンジンに追加する必要もあります。たとえば、VKontakteユーザーIDを保存するユーザーのネームプレートに「vk_id」フィールドを追加します。



実際の条件で動作するためのアルゴリズムは、およそ次のとおりです。

  1. VKontakteユーザーがログインした後、別のページ(私の場合はvk.php)にスローし、そのようなvk_idを持つユーザーが既に登録されているかどうかを確認します。 そうでない場合は、簡略化された登録フォームを表示します(たとえば、ログインとメールのみ)。 次に、ユーザーを作成し、新しく登録した訪問者をメインページにスローします。
  2. 訪問者がサイトにログインしていない場合に備えて、Auth_Vkontakte :: is_authを介してVKontakte Cookieをチェックするバックエンドを作成します。 is_authがfalse以外の値を返し、このIDを持つユーザーがサイトに登録されている場合、システムを通じてユーザーを承認します。 彼が突然登録されなかったことが判明した場合、登録フォームを再度表示します。
  3. ログアウトすると、Cookieに加えて、VKからのCookieも削除されます(Auth_Vkontakte :: logoutメソッド)


一般に、このような例では、任意のAPIに関するドキュメントを開始する必要があるように思われます。 ただし、VKontakte開発者はそうは思わず、ドキュメントからOpen APIを理解することは不可能です。 実際、私はそれを使用しませんでした。durov.atのソースコードのすべてを読むだけです。

VKontakte社は、受け入れられるパラメーターの簡単な説明を含む関数のドライリストではなく、例や通常のマニュアルを作成する通常のテクニカルライターを雇う余裕はありませんか?



作業中のテスト例を試すには(ただし、ID以外は表示されません)、 ソースをダウンロードして、ローカルWebサーバーをopenapi.lc (ホストに追加:127.0.0.1 openapi.lc)で設定します。



誰かが気に入って便利になったら-FacebookConnectについての記事も書きます。



All Articles