Revision: 26746
Initial Code
Initial URL
Initial Description
Initial Title
Initial Tags
Initial Language
at May 9, 2010 13:10 by hitsthings
Initial Code
private GCheckout.EnvironmentType CheckAuthorization(string authHeader) { if (string.IsNullOrEmpty(authHeader)) { Logger.Debug("No Authorization Header"); return GCheckout.EnvironmentType.Unknown; } if (authHeader.Contains("Basic")) authHeader = authHeader.Substring(authHeader.IndexOf("Basic") + 5); var base64Auth = authHeader.Trim().Base64Decode(); var userPass = base64Auth.Split(':'); if (userPass.Length < 2) { Logger.Debug("Authorization Header was malformed. Raw: " + authHeader + ", Base64Decoded: " + base64Auth); return GCheckout.EnvironmentType.Unknown; } if (userPass.Length > 2) userPass[1] = userPass.Skip(1).Join(""); if (userPass[0] == Configuration.GoogleMerchantId && userPass[1] == Configuration.GoogleMerchantKey) { return GCheckout.EnvironmentType.Production; } else if (userPass[0] == Configuration.GoogleTestMerchantId && userPass[1] == Configuration.GoogleTestMerchantKey) { return GCheckout.EnvironmentType.Sandbox; } else { return GCheckout.EnvironmentType.Unknown; } }
Initial URL
Initial Description
Using GCheckout.dll Join("") is an IEnumerable<string> extension I wrote (to concatenate strings with a separator) Base64Decode() is a string extension I wrote (decode base64) Configuration.Google[Test]Merchant{Id|Key} are just some static variables holding my info.
Initial Title
Basic Authentication (for Google Checkout)
Initial Tags
Initial Language
C#