VKでAPIとの仕事は何ですか。 VK API - アプリケーションの作成

ソーシャルネットワークはすでに私たちの生活にしっかりしていて、何百万ものユーザーを収集しています。 そして私達の兄弟のフレイザーは創造性のために新しい地域を開いた。 特に、Vkontakteシステム内のアプリケーションを簡単に統合することを容易にするVKontakteネットワークプロジェクトのフラッシュアプ\u200b\u200bリケーション。

だから、Vkontakte APIが私たちを提供するもの - それを理解しましょう。

概要

いつものように、私たちの同僚がそれについて書いていることを読むことを始めるために。

ただし、「Vkontakte」の内の資料を除く、わかりやすい記事は見つかりませんでした。 誰かがそのようなものを見たことがあるならば、コメントへの参照を投げてください。 そう:

機会API VKontakte.

API関数を分析することによってVKontakteアプリケーションの機能を識別しようとしましょう。

ユーザーデータの操作

アプリケーションは次のデータにアクセスできます。

  • このアプリケーションのページにアプリケーションを閲覧するユーザーが
  • IDに基づく任意のユーザーのデータ:
    - 名前、
    - 姓、
    - Pseudonym、
    - ポール、
    - 生年月日、
    - 市、
    - 国、
    - タイムゾーン、
    - 小型、中規模、大型サイズのURL、
    - 彼の携帯電話は知られています
    - 評価
  • 残高 ユーザーアカウント
  • アプリケーションを表示するユーザーにアクセスするには
    - 彼に通知を送ることを許可する、
    - 友達へのアクセス、
    - 写真へのアクセス、
    - オーディオレコーディングへのアクセス、
    - 提案へのアクセス、
    - 質問へのアクセス
    - Wikiページへのアクセス、
    - 左側のメニューへのアクセス、
    - ユーザーの壁に出版する。
  • ユーザーが付いているグループのリスト 一般情報 各グループについて。

各ユーザーVkontakteには友達があります - その他のユーザーVkontakte。 利用可能なユーザーフレンドデータ:

  • 現在のユーザーの友達のリスト。
  • このアプリケーションをインストールしている現在のユーザーの友達のリスト。

アプリケーションは以下のアクションを実行することもできます。

  • アプリケーションに代わってユーザー評価を上げます
  • ユーザが左側のメニューにアプリケーションをインストールした場合、アプリケーションはアプリケーションの短い名前を設定し、アプリケーション名の横にカウンタを出力することができます - たとえば通知カウンタです。
  • アプリケーションステータスバーをインストールして読み取ります。

ユーザーの写真を扱う

VKontakteユーザーは、「マイ写真」のセクションに写真を使って複数のアルバムを作成できます。 APIは、アルバムや写真を操作するための幅広い機会を提供します。

写真はJPG、PNGまたはGIFフォーマットを持つ必要があります。

アプリケーションは次のようになります。

  • 各アルバムに関する共有データを持つフォトアルバムのリスト。
  • 様々なサイズや品質の画像への参照のセットの参照で、任意のアルバム(または写真ID上の直接)からの写真のリスト。

アプリケーションは、アルバムや写真で次の操作を実行できます。

  • アルバムを作成します(説明とそれへのアクセスの制御を使用して)。
  • 既存のアルバムのデータを編集します。
  • アルバムのリストで順序を変更します。
  • アルバム内の写真の順序を変更します。
  • アルバムからアルバムに写真を転送します。
  • アルバムカバーの写真を作る。
  • ユーザーの壁に、ユーザーの壁に写真をアップロードします。

ユーザーオーディオレコーディング

ユーザーはオーディオの録音をダウンロードして「マイオーディオレコード」セクションでそれらを聞くことができます。

オーディオレコーディングはMP3形式でなければならず、10MBを超えて著作権に違反しないでください。

APIは、オーディオ記録を扱う機会の幅広い機会を提供します。

  • 一般的なユーザーオーディオ録音またはグループのリストを受信し、 詳細な情報 各レコードについて。
  • オーディオ録音の曲のテキストを受け取ります。
  • オーディオレコーディングを検索します。
  • リモートオーディオレコーディングをダウンロード、削除、復元します。
  • オーディオレコードデータを編集します。
  • オーディオ録音をユーザーページまたはグループに追加します。
  • オーディオレコーディングの順序を変更します。

ユーザーのビデオを操作します

APIを使用すると、ユーザーのビデオ録画のリスト、各ビデオに関する一般情報を持つグループのリストを受け取ることができます。

ユーザーの壁

アプリケーションは、テキストを含むレコード、およびユーザーのアルバムからの画像を表示するか、またはVKontakteサーバーにダウンロードすることができます。

APIは以下の機能への附属書アクセスを提供します。

  • 支払いのバランス(投票数)アプリケーションを入手してください。
  • ユーザーのバランスバランス(投票数)を入手してください。
  • アプリケーションアカウントからユーザーアカウントへの投票を翻訳します。
  • アカウントアカウントからアプリケーションアカウントへのボイスを翻訳します。
  • 翻訳ユーザーアカウントからアプリケーション内の別のユーザーに票を付けます。
  • ユーザーとアプリケーションの間の投票を転送するためのトランザクションストーリーを表示する

SMSと協力します。

VKontakteアプリケーションはSMSの送受信などの強力なサービスを使用できます。

  • SMS通知を送信する。 同時に、申請アカウントから0.1票が書き込まれます。
  • ユーザーアプリケーションから受信したSMSメッセージのリストを表示します。
  • アプリケーションによって送信されたSMS通知の履歴を表示します。
SMSメッセージの送信は無料です(通常のSMSメッセージのコスト)。 電話は電話+ 7 921 000 00 07で実行され、アプリケーションはそのメッセージを受信し、APIは、ユーザーがSMSの先頭に指定しなければならないプレフィックスアプリケーションをインストールする機能を提供します。

サービス「提案」と働く

サービス「オファー」の助けを借りて、ユーザーは独自のユニークなオファーを作成する機会を得ます。 このオファーはすべてのVKontakteユーザーを見ることができます - このサービスは個人ページとは無関係です。 任意の文は「あなたが好き」という言葉で始まり、そのテキストはそれ自体に従います、そして最後に既に疑問符を表しています。 ユーザーは他のユーザーの提案を見て、「はい、もちろん」オプションを押すか「いいえ」オプションを押すことを拒否することで、他のユーザーの提案を受け入れることができます。

だから、提案を扱うための関数:

  • 編集、オープン 一般アクセスそしてアプリケーションを通して見るユーザーのオファーを閉じます。
  • 表示、ユーザー提案を検索します。
  • ユーザー文を取ると拒否します。
  • ユーザーのオファーに対する回答を表示します。
  • ユーザーが取得した契約への回答のリストを受け取ります。
  • ユーザーの答えを読むことについての取り外しと注目

サービスの「質問」と連携する

あなたが質問をして他のユーザーからの回答を受け取ることを可能にする類似の以前のサービス。 APIには、アプリケーションからこのサービスを管理するために必要なものがすべてあります。

Wikiページと協力してください

ユーザーには、グループ内の参加者が相互参照を持つ無限数のページを共同で作成できるようにするページを編集するためのシステムが提供されています。 したがって、ユーザーはライブラリーまたはミニ百科事典のグループで作成できます。 さらに、ユーザーは特別なWikiマークアップを使用してページを設計できます。

アプリケーションはWikiページを操作する機能を持っています。

  • テキストIを受け取る 完全な情報 Wikiページについて。
  • Wikiページのテキストと設定を編集して保存します。
  • グループ内のWikiページのリストを入手してください。
  • HTMLマークアップでWikiをブロードキャストする。

チャット団体

APIでは、メッセージキュー - 127メッセージを使用してアプリケーションチャットで作成できます。 これにより、キューへのメッセージを追加し、メッセージキュー全体を表示します。

ゲーム記録の保存

APIが提供します 特殊機能 ユーザーゲームの結果を保存して結果のリストを取得するには。

変数を使って作業する

データを保存するために、APIは4096の固有変数の各アプリケーションを255バイトに提供します。

さらに、変数は次の範囲にわたって分散されています。

  • グローバル変数:このアプリケーションのすべてのインスタンスに共通のデータに使用できます。たとえば、これはゲームアプリケーションレコードテーブルです。
  • ユーザー変数:これらの変数は、このアプリケーションの各ユーザーに固有であり、たとえばユーザーゲームを保存することができます。
    変数の約半数が他のユーザーに利用可能です。 いくつかの変数はさまざまなニーズに予約されています。
  • セッション変数:変数を使用するときは、セッションID(セッションまたは部屋)を指定できます。 したがって、この範囲の変数は、現在アプリケーションを参照しているすべてのユーザーに共通です。 したがって、アプリケーションはリアルタイムチャットルーム、マルチプレイヤーゲームなどでマルチプレイヤー通信を行うことができる。
  • 現在表示されたアプリケーションに固有の一時データを含む変数とそれが閉じられるとき。

ただし、変数の数は大きくない - 範囲ごとに1024の変数しかないため、予約された変数を除いています。


リモート開発者サーバーを操作します

VKontakteアプリケーションは通常のフラッシュアプ\u200b\u200bリケーションであり、1つの大きな不利益があります。 ハッキングから保護されているとは考えられません。 より正確には、フラッシュアプ\u200b\u200bリケーションをハッキングするコストは、たとえばサーバーをハッキングするのと同じくらい大きくはありません。 あなたが簡単にソースを得ることができる十分な数のswf-decomilatorプログラムがあります プログラムコード、アプリケーションのロジックを調べて、APIへの登録要求を登録します。

したがって、上記のいくつかの関数は一緒にのみ機能します。 リモートサーバー Flashアプリケーションをバイパスする開発者、すなわち:

  • ユーザー評価
  • メインページのアプリケーション内のユーザーの短い状態を表示します。
  • ユーザー通知を送信する(このアプリケーションをインストールしたユーザーのみ)
  • 声を扱う(支払い取引)
  • アプリケーションにメーターをインストールしてアプリケーションステータス文字列を処理する
  • SMS通知の送信と表示

したがって、これらの動作を実行できるようにするために、アプリケーションはAPIに直接アクセスし、それ自身の所定のInterLayerサーバを要求し、それが順番にVkontakte APIと通信し、アプリケーションによって受信されたアプリケーションを与える。

一般に、もちろん、VKontakteアプリケーションフォーマットで機能する大規模プロジェクトの場合もちろん、この特定のサーバーはアプリケーションロジック全体を扱う「脳」でなければなりません。 この場合はフラッシュアプ\u200b\u200bリケーションだけ」 スリムクライアント「、これはサーバーの操作の結果を美しく表示します。

アプリケーションのローカライズ

アプリケーション開発者は、Vkontakte Translation Platformを使用してアプリケーションを50以上の言語に変換する機能を備えています。 現時点では、テストステージのプラットフォームは、ユーザーが多数のアプリケーションにのみ適用されます。

Flash-Containerアプリケーションを使用してください

Vicontakteページへのフラッシュアプ\u200b\u200bリケーションを実装するための代替方法 - Flashコンテナを介して。

Flash Containerアプリケーションには、次のアプリケーションがあります。

特徴API Vkontakte.

だから、私たちはVkontakte APIのすべての機能を知り合いました。 私は顔をしなければならなかった、特徴(むしろ欠陥)APIを割り当てたいです。

結果

VKontakte Flashアプリケーションには、基本的なタスクを解決するかなり強力なAPIがあり、メディアの複雑さのプロジェクトを完全に確保できます。 他のすべてのニーズ、開発者はそのWebサーバーを使用して決定できます。

こんにちは、habr!

当時、有理のためにインターネットのための糞便スペース aPIを使用する。 VKontakte、私は理解できるものを見つけることができませんでした。 私は、根本的な誤解を修正し、私の図書館をVKontakte APIと協力させることにしました。
ハブラカットの下での詳細とアプローチ。

そのようなことは、AC APIが後で言及していない論理的な瞬間を除いて、かなりよく実装されていたことが起こりました。 しかし今日のスピーチは品質についてではなく、具体的な申請についてです。

説明に加えて、予約をする必要があります。私のライブラリにワークコードを作成し、私が記事の最後に与えるリンクを作成します。 ライブラリは最後の安定バージョン5.5で機能します。バッチ受信からジェネレータを削減すると、5.4で動作する必要があります。

  • サーバー認証(SO-B。ロギングサイト)
  • 顧客認証(スタンドアロン)
  • アプリケーションサーバーの承認
開発者にとって最も興味深いは、最初の2つを表します。 最初に、サイト上のユーザーを承認し、そのアクセスキーを取得することができます.2番目に、DekStopやMobileなどのアプリケーションを承認できます。 実行、前方、2番目のオプションは私たちに大きな機会を提供し、最初の、ただの部分のみを提供します。

最初のケースで入手するためのアルゴリズムは以下の項目に縮小されます。

  • ドキュメントに従ってフォーマットするユーザーを承認するためのリンクを表示します
  • ユーザーはそれを通過して記録します
  • ユーザーは、GETパラメータコードを使用して、アプリケーションのRedirect_URIにリダイレクトされます。
  • アプリケーションは、ユーザーアクセスキーを取得するためのAPIを含むAPIに要求を実行する必要があります。
  • APIは、アクセスキーまたはエラーを含むオブジェクトと応答します。

これを確認できるコード例は、トリッキーなビジネスではありません。

$ auth \u003d getjump \\ vk \\ auth :: getInstance(); $ AUTH-\u003e SETAPPID( "3470411") - \u003e SetScope - \u003e SetSecret( "Secret Code") - \u003e setRedirecturi( "http://localhost/test.php"); $ token \u003d $ auth-\u003e startCallback(); printf( "link"、$ auth-\u003e geturl());

私たちのドメインはlocalhost、および現在のtest.phpファイルであると仮定します。 すべてがうまくいった場合、$ token変数では、ユーザーのアクセスキーに承認が含まれます。

アクセスキーがある瞬間から、実行できます aPIに要求する 。 一般的なクエリロジックは単純で、特別に形成された要求をURL APIに渡します。 要求には、メソッドの名前、および引数が含まれていなければなりません。

api.vk.com/method/method_name?parameters&access_token\u003daccess_token。

メソッドのリスト これは豊かなものの1つです。 その中で、作業のアクセスキーを必要としないメソッドを満たすことができます。したがって、それらを呼び出すことはできません。

ライブラリを使用するときは、次のような基本オブジェクトを作成する必要があります。
$ vk \u003d getjump \\ vk \\ core :: getInstance() - \u003e Apiversion( "5.5") - \u003e SetToke($ token);

ライブラリを使用したクエリ例のペア:

それぞれの匿名関数を通して、1から100までのユーザーデータを含む100個のオブジェクト。注意関数呼び出しが発生した場合、オブジェクトが__callと__getが再定義されているため、リクエストは発生しません。私たちが本当にそれを必要とするときに要求をするために私たち。
$ vk-\u003e要求( "users.get"、 "user_ids" \u003d\u003e範囲(1,100)]) - \u003eそれぞれ(関数($ i、$ v)(場合は($ v-\u003e last_name \u003d\u003d "" )戻る$ v-\u003e last_nameを印刷してください。」
"; });

開くものの1つは、発電機 - バッチ領収書を使用します。 つまり、必要なときにのみデータが取得されます。 次の例では、すべての投稿を取得することができます。 方法 それはあなたがメッセージ、スタンドアロンアプリケーション、同じ承認およびそれに応じてアクセスキーを転送するための権限を必要とする。
foreach( "$ vk-\u003e要求(" messages.get ") - \u003eバッチ(100)($ Data-\u003eそれぞれ(関数($ i、$ m)(if(isset($ m - \u003e本文)) )$ M→本体を印刷する。PHP_EOL;);)

良い方法これはAPIにあります - 実行してください。 。 彼は受け入れます コードパラメータ 引数として、コードは疑似JavaScriptです。これにより、サーバー側でコードを満たすことができます。これにより、アプリケーションを編集するときに作成できるストアドプロシージャを実行できます。

私はこのことを迂回してそれをライブラリーに実装できなかった。 一言で言えば、それはあなたが一つとしていくつかの要求を実行することを可能にします。 次のサンプルコードを参照してください。

$ JS1 \u003d $ vk-\u003e要求( "messages.get"、["count" \u003d\u003e 200、 "オフセット" \u003d\u003e 0 * 200]) - \u003e tojs(); //オブジェクト型vkjs $ js2 \u003d $ vk-\u003e要求( "messages.get"、["count" \u003d\u003e 200、 "オフセット" \u003d\u003e 1 * 200]) - \u003e tojs(); $ JS3 \u003d $ VK-\u003e要求( "messages.get"、["count" \u003d\u003e 200、 "オフセット" \u003d\u003e 2 * 200]) - \u003e tojs(); $ JS4 \u003d $ VK-\u003e要求( "messages.get"、["count" \u003d\u003e 200、 "オフセット" \u003d\u003e 3 * 200]) - \u003e tojs(); $ JS1 - \u003e APPEND($ JS2)// JS2をJS1に追加します。 - \u003e Response // Requestは今すぐです。 ($ v-\u003eそれぞれ(関数($ c、$ d)(//各IF配列のすべてのメッセージの通過(ISSet($ d-\u003e本体))$ d-\u003e本体; //撤回このフィールドが存在する場合)));););

約束されているように、あなたが会うことができるそれらの誤解のうちの1つ 現行版 API(5.21)、方法

2014年5月6日、16:12

正しいアプローチ API Vkontakteを使用するには

  • 博士
  • Vkontakte API。

こんにちは、habr!

インターネットのためのインターネットのための緊急スペースのために、Vkontakte APIの合理的な使用のためにスペースを見つけることができ、私によって見つけられた唯一のライブラリは、一般的に受け入れられていない慣例を使用せずに、そして美しいコードなしで実装されました。 私は、根本的な誤解を修正し、私の図書館をVKontakte APIと協力させることにしました。
ハブラカットの下での詳細とアプローチ。

そのようなことは、AC APIが後で言及していない論理的な瞬間を除いて、かなりよく実装されていたことが起こりました。 しかし今日のスピーチは品質についてではなく、具体的な申請についてです。

説明に加えて、予約をする必要があります。私のライブラリにワークコードを作成し、私が記事の最後に与えるリンクを作成します。 ライブラリは最後の安定バージョン5.5で機能します。バッチ受信からジェネレータを削減すると、5.4で動作する必要があります。

  • サーバー認証(SO-B。ロギングサイト)
  • 顧客認証(スタンドアロン)
  • アプリケーションサーバーの承認
開発者にとって最も興味深いは、最初の2つを表します。 最初に、サイト上のユーザーを承認し、そのアクセスキーを取得することができます.2番目に、DekStopやMobileなどのアプリケーションを承認できます。 実行、前方、2番目のオプションは私たちに大きな機会を提供し、最初の、ただの部分のみを提供します。

最初のケースで入手するためのアルゴリズムは以下の項目に縮小されます。

  • ドキュメントに従ってフォーマットするユーザーを承認するためのリンクを表示します
  • ユーザーはそれを通過して記録します
  • ユーザーは、GETパラメータコードを使用して、アプリケーションのRedirect_URIにリダイレクトされます。
  • アプリケーションは、ユーザーアクセスキーを取得するためのAPIを含むAPIに要求を実行する必要があります。
  • APIは、アクセスキーまたはエラーを含むオブジェクトと応答します。

これを確認できるコード例は、トリッキーなビジネスではありません。

$ auth \u003d getjump \\ vk \\ auth :: getInstance(); $ AUTH-\u003e SETAPPID( "3470411") - \u003e SetScope - \u003e SetSecret( "Secret Code") - \u003e setRedirecturi( "http://localhost/test.php"); $ token \u003d $ auth-\u003e startCallback(); printf( "link"、$ auth-\u003e geturl());

私たちのドメインはlocalhost、および現在のtest.phpファイルであると仮定します。 すべてがうまくいった場合、$ token変数では、ユーザーのアクセスキーに承認が含まれます。

アクセスキーがある瞬間から、実行できます aPIに要求する 。 一般的なクエリロジックは単純で、特別に形成された要求をURL APIに渡します。 要求には、メソッドの名前、および引数が含まれていなければなりません。

api.vk.com/method/method_name?parameters&access_token\u003daccess_token。

メソッドのリスト これは豊かなものの1つです。 その中で、作業のアクセスキーを必要としないメソッドを満たすことができます。したがって、それらを呼び出すことはできません。

ライブラリを使用するときは、次のような基本オブジェクトを作成する必要があります。
$ vk \u003d getjump \\ vk \\ core :: getInstance() - \u003e Apiversion( "5.5") - \u003e SetToke($ token);

ライブラリを使用したクエリ例のペア:

それぞれの匿名関数を通して、1から100までのユーザーデータを含む100個のオブジェクト。注意関数呼び出しが発生した場合、オブジェクトが__callと__getが再定義されているため、リクエストは発生しません。私たちが本当にそれを必要とするときに要求をするために私たち。
$ vk-\u003e要求( "users.get"、 "user_ids" \u003d\u003e範囲(1,100)]) - \u003eそれぞれ(関数($ i、$ v)(場合は($ v-\u003e last_name \u003d\u003d "" )戻る$ v-\u003e last_nameを印刷してください。」
"; });

開くものの1つは、発電機 - バッチ領収書を使用します。 つまり、必要なときにのみデータが取得されます。 次の例では、すべての投稿を取得することができます。 方法 それはあなたがメッセージ、スタンドアロンアプリケーション、同じ承認およびそれに応じてアクセスキーを転送するための権限を必要とする。
foreach( "$ vk-\u003e要求(" messages.get ") - \u003eバッチ(100)($ Data-\u003eそれぞれ(関数($ i、$ m)(if(isset($ m - \u003e本文)) )$ M→本体を印刷する。PHP_EOL;);)

APIにある可能性がある良い方法 - 実行してください。 。 それは引数としてcodeパラメータを受け入れます、コードを述べる疑似JavaScriptでは、サーバー側でコードを満たすことができます。アプリケーションを編集するときに作成できるストアドプロシージャを実行できます。

私はこのことを迂回してそれをライブラリーに実装できなかった。 一言で言えば、それはあなたが一つとしていくつかの要求を実行することを可能にします。 次のサンプルコードを参照してください。

$ JS1 \u003d $ vk-\u003e要求( "messages.get"、["count" \u003d\u003e 200、 "オフセット" \u003d\u003e 0 * 200]) - \u003e tojs(); //オブジェクト型vkjs $ js2 \u003d $ vk-\u003e要求( "messages.get"、["count" \u003d\u003e 200、 "オフセット" \u003d\u003e 1 * 200]) - \u003e tojs(); $ JS3 \u003d $ VK-\u003e要求( "messages.get"、["count" \u003d\u003e 200、 "オフセット" \u003d\u003e 2 * 200]) - \u003e tojs(); $ JS4 \u003d $ VK-\u003e要求( "messages.get"、["count" \u003d\u003e 200、 "オフセット" \u003d\u003e 3 * 200]) - \u003e tojs(); $ JS1 - \u003e APPEND($ JS2)// JS2をJS1に追加します。 - \u003e Response // Requestは今すぐです。 ($ v-\u003eそれぞれ(関数($ c、$ d)(//各IF配列のすべてのメッセージの通過(ISSet($ d-\u003e本体))$ d-\u003e本体; //撤回このフィールドが存在する場合)));););

約束されているように、あなたが現在のバージョンのAPI(5.21)で会うことができるこれらの誤解の1つ(5.21)、メソッド

2018年4月 私は14でした。私の友達と私はVkontakteからの非常に人気のあるオンラインクイズ「クローバー」で演奏しました。 私たちの一人(通常はi)は常にノートパソコンがすぐにGoogleの質問をして、検索結果の正しい答えを探してみました。 しかし、突然私が同じ行動を実行するたびに、そしてPython 3に部分的に知られていることを試みることを決めました。

ステップ0はここで何が起こるのか

開始のために、私はあなたのメモリメカニズム "クローバー"で更新します。

みんなのゲームは同時に - 13:00とモスクワの20:00に始まります。 遊ぶには、この時点でアプリケーションにアクセスする必要があり、直接放送に接続する必要があります。 ゲームが来ています 参加者が電話に入っている15分 同時に 質問があります。 答えが与えられます 10秒。 それから正しい答えが発表されます。 推測したのは誰のすべてを渡します。 質問全体12、そしてあなたがすべてに答えたら - あなたは現金賞を受けるでしょう。

それが判明して、私たちのタスクはクローバーサーバーから新しい質問を即座にキャッチし、それらを検索エンジンを通して処理し、正しい答えを発行した結果に従って行うことです。 答えの出力はボトルボットで生産することにしました。そのため、ゲーム中に電話機にあふれた通知が登場しました。 そして、答えの時間が非常に限られているので、これはすべて2,3秒であることが好ましい。 あなたがとても簡単なことを見たいのであれば、作業コード(そしてこれを見て今初ぐに見えるでしょう)はクローバーを勝ち取りました - 猫へようこそ。

私はよく私に尋ねます aPIを使って仕事をする方法。 関連する最も人気のあるタスク API。、 - aPI Vkontakteを使った作業。 この記事では私は見せます vKontakte APIを使って作業する方法そして、最も重要なことには、それを見せてください すべてのAPIは一般的な原則に従って動作します。.

ここに 手順あなたがする必要があるか aPIの操作を開始します:

  1. 見つけるには ドキュメンテーション 希望による API。.
  2. 見て aPIに接続する例。 さまざまな選択肢があるかもしれません。 たとえば、1つのサービスでは、登録後に発行された秘密鍵が必要になります。 2回目のサービスでは、すべての要求に秘密鍵が必要ありません。 3番目のサービスでは、秘密鍵の両方があり、作業オプションがありません。 時々、秘密鍵は求められます トークン.
  3. コピー 簡単な既製のコード ドキュメンテーションサイトからその作業を確認してください。 動作していない場合は、サービスにほとんどないため、エラーを探します。
  4. 見つけるには ドキュメントで 方法これはあなたの仕事を解決します。
  5. 方法の例と説明を使用して、 aPIに正しい要求を送信してください.
  6. 応答形式に応じて、それを逆アセンブルする」 コンポーネント「そして、必要とされているもの - ユーザーを表示するには、ファイルに保存し、データベースに送信してください。

そして、以下の説明の例として、私たちは分析します API VKontakte.。 そう:

  1. リンク ドキュメンテーション.
  2. この場合、公開されている方法があり、したがってトークンを必要としないが、それを必要とするメソッドがあります。
  3. この場合、私は特定の言語の例を見つけませんでした。 おそらく彼らはそうですが、明らかに見えない。 通常、 API。 各方法については、さまざまな言語の例があります。
  4. 勝ちたい 特定のユーザーの壁からの最後の録音、そしてあなたのサイトにそれらを取り出す。 方法が必要です。

今私たちは aPIへの要求を送信するメソッドの説明を使用する。 私たちはそれを通してそれをやります PHP。:

$ wall \u003d file_get_contents( "https://api.vk.com/method/wall.get?v\u003d5.3&filter\u003dakingとdomain \u003dmyrusakov&count\u003d5");
print_r($壁);
?>

この場合、私は使います API 5.3。 (v \u003d 5.3。)、私は著者に関係なくすべての記録を取ります( フィルタ\u003dその他。)あなたのページから( domain \u003d Myrusakov。)量で 5 片手 count \u003d 5。)。 私はここですべてが非常に透明であると思います。

私たちはフォーマットで応答を得ました JSON。そして今、私たちは最後の点に移動する必要があります - 答えを逆アセンブルする」 コンポーネント「。それから私達は私達のサイトのページ上の多かれ少なかれ読みやすい形で壁からのエントリーを撤回します。 PHPコード:

$ wall \u003d file_get_contents( "http://api.vk.com/method/wall.get?v\u003d5.3&filter\u003djpおよびdomain\u003dmyrusakov&count\u003d5"); //リクエストを送信します
$ wall \u003d json_decode($壁); // JSON行を配列に変換します
$ wall \u003d $ wall-\u003e応答 - \u003eアイテム。 //コメントの配列を取得します
($ i \u003d 0; $ I)のために< count($wall); $i++) {
エコー "

「。($ i + 1)」. 「$ wall [$ i] - \u003eテキスト。 "
「.Date( "y-m-d h:i:s"、$ wall [$ i] - \u003e日付)。」

"; //レコードを撤回します
}
?>

あなたが見ることができるように、すべてがとてもシンプルです。 最も難しい部分は、コンポーネントを分解することです。 結果を出力するのが好きです API。 使って print_r。そしてこの処理を書きます。 メソッドの説明では答えの例を見ることができますが、パーサーを書きます。

トピックを続ける:
os

HTTPSが必要な場合は「サービスへのリンクを追加する」を登録したWebサービスがあります。 以下はインスタンスを作成するための私のコードです...