あなたは非常に簡単です、あなたが質問するので、私はそれについて話を習慣ステップ3 Instagram Autorizationを完了したら、データベースとInstagramのデータを統合する方法では、次のJSON受ける必要があります。
を
{
"access_token": "fb2e77d.47a0479900504cb3ab4a1f626d174d2d",
"user": {
"id": "1574083",
"username": "snoopdogg",
"full_name": "Snoop Dogg",
"profile_picture": "..."
}
}
あなたがデータをどうするarchitetureの問題です:
1)あなたは、ユーザーがInstagramのか、通常のユーザ名/パスワード
て承認することができます
パスワードフィールドとInstagramののUSER_IDの両方を持つユーザー表を作成します。
あなたのuserテーブルは次のように次のようになります。
CREATE TABLE users (
id INT AUTO_INCREMENT NOT NULL ,
username VARCHAR(255) NOT NULL,
password VARCHAR(255) DEFAULT NULL,
instagram_userid INT DEFAULT NULL,
instagram_accesstoken VARCHAR(255) DEFAULT NULL,
PRIMARY KEY(id)
);
ユーザーは、あなたがしなければならないのInstagramを通じて認証し、いつでも:
- ルックinstagram apiによって返された同じinstagram_useridを持つ行のテーブルを使用するためです。
- instagram_useridが既に存在する場合は、今すぐあなたのアプリケーションのユーザーを認証する必要があります(例:SESSIONS/COOKIES、あなたが一生懸命やったいつもの方法)。
- instagram_useridが存在しない場合は、Instagram APIによって返されたユーザー名でユーザー行を作成する必要があります。また、このユーザーをSESSIONで認証します。
2)Instagramのは
あなたはその後、ちょうどのみInstagramのAPIのリターンのためのミラーであるユーザーテーブルを作成する必要がありますを認証するための唯一のユーザーの選択です。あなたの主キーとしてinstagram_userid扱うことができます:ユーザーがInstagramのAPIをthrought認証
CREATE TABLE users (
username VARCHAR(255) NOT NULL,
instagram_userid INT DEFAULT NULL,
instagram_accesstoken VARCHAR(255) DEFAULT NULL,
PRIMARY KEY(instagram_userid)
);
- いつでも、あなたはInstagramのAPIによって返されると同じIDを持つ行のためにあなたにユーザテーブルを検索する必要があります。
- 行が存在する場合は、そのユーザーをアプリケーションで認証します。
- 行が存在しない場合は、作成してユーザーを認証します。
をマージアカウントアプリケーションがユーザ名/ passoword認証と、おそらく他の認証プロバイダの両方を処理する場合、ユーザーが彼がアプリをあなたを通して登録が道Instagramの認証ができますことを忘れかもしれないと期待してください、とユーザー名/パスワードによる自動入力を試みます。このような場合は、アカウントを複製する代わりに、アカウントをマージする方法を提供することがあります。たとえば、ユーザーのInstagram電子メールがユーザー名としてデータベースに存在する場合、新しいアカウントを想定する代わりに、この行をinstagram apiデータで更新する必要があります。このようにして、ユーザーはusuername/passwordとInstagramで両方を認証できます。
アクセストークン
Instagramのアクセストークンが格納されているが、使用されません。どうして?ユーザーの投稿、友人リストなどのように、インスタントグラムデータを取得するために使用されるため、トークンの有効期限が切れる可能性があるため、トークンの有効期限を処理し、ユーザーに再度認証されます。
ありがとうございます。私はそれを明確にしています。それは私のデータベースとinstagramログインを交差させる方法を知らないだけです。 instagramで特定のデータを取得するinstagramでログインしてみましょう。その情報から、私はいつもInstagramとデータベースとの相関関係を保つためにデータベースに保存する必要がありますか? – SunnySonic
更新された回答を見る – jNewbie
はい、userloginやemailのようなもので、一意のログインフィールドのように使います。そのような情報や不変なものでパスワードのハッシュを生成する。 – Marco