「相手からもブロックされているかも?」の判定の仕組み
ひすったーのブロック済み一覧で、ブロック済みアカウントからブロックされている可能性がある場合、以下のように「相手からもブロックされてるかも?」と表示するようにしましたが…。
妙な方向に誤解を受けるのもアレなので、一応仕組みについて解説しておきます。
TwitterAPIでアカウントのデータを取得する時に、対象アカウントの最新のツイートを1件取得するオプションがあります。
その投稿日時を元に対象アカウントの「最終ツイート日」等を表示しているのですが、「被ブロックアカウントのトークン」で、対象のアカウントの情報を取得しようとすると「最新のツイート1件分」を取得する事が出来ません。
「ブロック済み一覧」なので「ブロック済みである以上、対象が非公開アカウントであれば承認を受けているはずは無い(仮に承認を受けていたとしてもブロックした時点で解消されている)」ので、非公開アカウント以外で「最終ツイート日を割り出せない(最新のツイート1件分のデータがない)=対象にブロックされている可能性がある」と判断する事が出来ます。
で、それらのアカウントについて「相手からもブロックされてるかも?」と表示します。
大雑把に言うとそんな感じです。
ちなみに「相手からもブロックされてるかも?」と表示されるアカウントには「最終ツイート日」が表示されないというのも上記のような理由です。
ぶっちゃけ「相手からもブロックされてるかも?」の表示がなくとも、そこを見れば大体判断出来ます。
いずれにしても「かも?」としか言ってないので「仮に違ったとしても許してね!」ってことで。
コメント