0
在我的應用程序中,我希望用戶能夠使用facebook和twitter登錄。
對於臉書我看到有一個程序爲ParseFacebookUtils
做好準備,但是沒有像Twitter那樣的東西,所以我自己做。
我已創建了與Twitter登錄的實現:用parse.com上的Twitter c#實現日誌記錄
void LoginToTwitter()
{
var auth = new OAuth1Authenticator(
"<authkey>",
"<authsecret>",
new Uri("https://api.twitter.com/oauth/request_token"),
new Uri("https://api.twitter.com/oauth/authorize"),
new Uri("https://api.twitter.com/oauth/access_token"),
new Uri("http://twitter.com/"));
auth.Completed += GetTwitterData;
var ui = auth.GetUI(Activity);
StartActivity(ui);
}
async public void GetTwitterData(object sender, AuthenticatorCompletedEventArgs e)
{
var request = new OAuth1Request(
"GET",
new Uri("https://api.twitter.com/1.1/account/verify_credentials.json "),
null,
e.Account);
await request.GetResponseAsync().ContinueWith(t =>
{
var res = t.Result;
var resString = res.GetResponseText();
Console.WriteLine("Result Text: " + resString);
var jo = Newtonsoft.Json.Linq.JObject.Parse(resString);
var imageUrl = new Java.Net.URL((string)jo["profile_image_url"]);
var twitterId = jo["id"];
var accessToken = e.Account.Properties["access_token"].ToString();
var expiresIn = Convert.ToDouble(e.Account.Properties["expires_in"]);
var expiryDate = DateTime.Now + TimeSpan.FromSeconds(expiresIn);
var userRealName = e.Account.Properties["screen_name"];
}, UIScheduler);
}
而現在唯一剩下的事情就是有數據與新用戶或者如果用戶存在LOGG他在關聯
我看到ParseFacebookUtils
。爲每個用戶創建一個隨機的用戶名。爲了讓我做這樣的事情,我必須首先檢查隨機生成的用戶名是否已經存在,使用twitter用戶名是一個好主意嗎? 同樣的Facebook商店的東西叫類型的authData的的authData的內容是這樣的:
{"facebook": {"access_token":"some_token","expiration_date":"some_date","id":"some_id"}}
如何我可以創建類似的東西Twitter的?我已經生成所需的字段