imza Facebook Connect doğrulama

oy
1

Ben bu büyük yönergeleri takip Stackoverflow soru ama bu imzayı doğrulamak şey hakkında emin değilim. Bu Facebook Toolkit bir şekilde sağlanan veya i şey kendimi yapmak zorunda mıyız mı? Dokümantasyon Bu nasıl yapılacağına ilişkin SuperClear değildir ve zaten facebook araç pişmiş ise ben mi fazla zaman harcamak istemiyorum.

Herkes bu yaptın? C # standart bir ASP.NET Web uygulaması kullanmak belirtmeliyiz. Herhangi bir yardım mutluluk duyacağız!

Oluştur 27/02/2009 saat 10:45
kaynak kullanıcı
Diğer dillerde...                            


2 cevaplar

oy
1

Şu anda, bunu kendiniz yapmak zorunda. Sana imza geçerli olup olmadığını görmek için arayabileceğiniz basit bir yöntem sağladık.

private bool IsValidFacebookSignature()
    {
        //keys must remain in alphabetical order
        string[] keyArray = { "expires", "session_key", "ss", "user" };
        string signature = "";

        foreach (string key in keyArray)
            signature += string.Format("{0}={1}", key, GetFacebookCookie(key));

        signature += SecretKey; //your secret key issued by FB

        MD5 md5 = MD5.Create();
        byte[] hash = md5.ComputeHash(Encoding.UTF8.GetBytes(signature.Trim()));

        StringBuilder sb = new StringBuilder();
        foreach (byte hashByte in hash)
            sb.Append(hashByte.ToString("x2", CultureInfo.InvariantCulture));

        return (GetFacebookCookie("") == sb.ToString());
    }

    private string GetFacebookCookie(string cookieName)
    {
        //APIKey issued by FB
        string fullCookie = string.IsNullOrEmpty(cookieName) ? ApiKey : ApiKey + "_" + cookieName;

        return Request.Cookies[fullCookie].Value;
    }

Not: SecretKey ve ApiKey ayarlamak gerekir Facebook tarafından sağlanan değerlerdir.

Cevap 03/06/2009 saat 03:40
kaynak kullanıcı

oy
0

Bunu kullanarak yapabilirsiniz FBConnectAuth yukarıda aynıdır yapar ve biraz daha.

Cevap 27/08/2009 saat 00:02
kaynak kullanıcı

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more