FacebookのAPIを用いて画像をpostする時に、プライバシー(公開範囲)設定で
少しハマったのでメモしておきます。
ドキュメント:
https://developers.facebook.com/docs/reference/api/post/
FacebookのAPIでpostする時、privacyパラメータで公開範囲の指定が可能です。
* PHPでの例
'privacy' => array( 'value' => 'CUSTOM', 'friends' => 'SELF', ),
この時に注意しなければならないのが、前述のドキュメントのprivacy項に記載されている
Note: This privacy setting only applies to ...
の部分。
自アカウントへのpostなら指定されたプライバシー設定を受け付けるが、
他アカウントへのpost時には無視します。みたいな事が書かれています。
Facebookはユーザのみでなく、アルバムや画像にも同等なidを付与する仕様から、
自身が所有するアルバムも、Facebook側では他アカウントとみなすと思われます。
具体的には、ユーザにもアルバムにも画像にも、その他全ての情報(?)に
以下の形式でアクセスが可能な仕様です。
ttps://www.facebook.com/[id]
つまり、自身のidと、自身の所有するアルバムのidは異なり、
他アカウント扱いとなるようです。
なので、このアルバムにこのプライバシー設定で画像をpostする。と処理を書いても、
他アカウントへのpostとして扱われてしまい、そのプライバシー設定は無視される。
(アルバム側の設定に依存する。)
となるのかなーと。
だとすれば納得ですね。。。
誤認識を含んでいたらすみません。
No comments:
Post a Comment