こんにちは。
//http://kurusugawa.jp/2009/06/24/microsoft-shared-licenses/
//http://archive.msdn.microsoft.com/mag201301CuttingEdge/Release/ProjectReleases.aspx?ReleaseId=5932
//http://msdn.microsoft.com/ja-jp/magazine/jj883950.aspx
などを参考に、C#を使ってfacebookにアクセスするツールを作っています。VisualStudio2010を使っています。
using System;
using Facebook;
namespace Facebook {
public partial class FacebookHelpers {
public static String GetLoginUrl() {
var client = new FacebookClient();
var fbLoginUri = client.GetLoginUrl(new { client_id = facebook_key, client_secrec = facebook_secret, redirect_uri = "https://www.facebook.com/connect/login_success.html", response_type = "code", display = "popup", scope = "email" + ",publish_stream,user_status" }); return fbLoginUri.ToString(); } } public static void Post(string token, String status, string url="/me/feed") { var client = new FacebookClient(token); try { dynamic result = client.Post(url, new { message = status }); } catch (Exception e) { string error = e.Message; } }
}
おおまかにこのようなコードで、ログインはできています。tokenにも値が入っています。
ところが、Postしてtokenを渡すとtry-catchの部分でエラーになり、(OAuthException - #200)というエラーが発生します。
これをGoogleで調べたところ、scopeの設定が違っているらしいのだ、ということはわかったのですが、なにとなにが違っているのでしょう?
ログインのときに、publish_streamやuser_statusなどのscope項目を足してみたのですが、いずれも変化なく、症状に変化が起きません。
コードを添削していただけるとうれしいです。
よろしくお願いします。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2016/04/11 13:38