Exemplo n.º 1
0
        public BaseService()
        {
            FirebaseClient       = new FirebaseClient("https://iuc-market-default-rtdb.firebaseio.com/");
            FirebaseAuthProvider = new Firebase.Auth.FirebaseAuthProvider(new Firebase.Auth.FirebaseConfig("AIzaSyB5XNkrCBWQucwLAmY_1dtx1-fwjyVnfjg"));
            FirebaseOptions config = new FirebaseOptions
                                     (
                "service_account",
                "iuc-market",
                "955d4ea4cae470e597798eaab8f24f2b2e41c889",
                "-----BEGIN PRIVATE KEY-----\nMIIEvwIBADANBgkqhkiG9w0BAQEFAASCBKkwggSlAgEAAoIBAQDn2Wpt7st0g5uW\ngPGlPhZIQBpkb2t5OL6BoPwkeiXOVV0rnbt5nd1e2G3LBYD3q5WzonuFIsz5YFuf\ng7BB50SjJwcQG4EeePuFFk/ksNqidVYGVorJyMadpUcJOwwP6k5EvQwk/YQupBbY\n7JR/ZGJnQjXUB/GbzWmUXtKw12m660UMV8unmFJVAhKGkdBAtB8Me+clZDOdfI0X\nwL7qqvYXYIIeVZ6z/TTZcmzbd99KmAuixPw9oP2D6RJst6pDM+NYHLZ05ZsnIiRt\nzhXvPUNoMdMgdJ4KhYyD8W7Lfow2p8gCPU5D/Hw4NioHLDd5F4tn5SW87+626zNu\nSm4gSPMrAgMBAAECggEAbUNfrnZSyNK7MOcMuqCzdJJNPdbqkeLlmQaqvXAZQA+n\nzIXV099Lc8bQm1S5Lj9dWh5xUtGPQtkf5OF1X+GjTbZ3VCZ6J8fBVTuqJC8aomRk\nybDgUG8/9wxsmVOMADYec7OaNRaKxEZNhCaeZxkCbQJdhtLFkPTx1FwJtBCYwd73\nxFHc7iSeO6nZknrxKtEaigtXq1x1f6kHQu7p2bijEt6kSt3lkDm+HRVoklf7i1x7\nqJunj6hvGUjIHxEhUg5BU+IgnQ/y/2Rryq1MgG3nVQeKh/vl3xl6iWQui3OvNRok\nASBd8+S/PeR4JXb9XhBqTRaLcZ603U0Qy6PxtJ/LGQKBgQD973pKheCSxTgxdcMK\n1bhQ/FCJSEuJyCVI5a6eySU/MEwZ8zYdaQYD2DD15CQwTI11cXiLimWpqqadj3g/\naNHxhzlKLJLNt/055H/Q0bvMLBF6iSMxPS6tvIpvl2PLfaW5l6rf7VLIsXy/Ows5\n+rPVmdFso/Fc4VOrleDfZfWOkwKBgQDpu/gyL6aQD6Hq4HBh8o0Ok622cF5X5haD\nAN0Vepeyzcj3VaeknkB5FJ891ZVOU7Ezj4i9LVtwnNtZqoxFXa/kbbkVnVCmrGgQ\nu+HsS8g+qTol8WIpOoovLy/tbFde6fVFKBssPyAjGEnPTnNdT3X2hNGe3NNddDeT\ncZOscCNQCQKBgQCdk2mzrPf6m9+O8aCirJS/zJK9XdtiGIzqe3ysk+1FFNdkkwPV\npEJTSGi5bWT3g8mUQ2GmVa9YZckWpNzdnFILKvpmCNrgRXgh4KVgE4YR4JbIDymD\neI/qx8CwFqWatNGOJYungUGJwHnEwQLqa6QEvHq0i9dO55RgOZVdi4uheQKBgQCg\nubtAd3foFHfZVaCyGeJZpb+MdtTJSNUuHIfq3zQ1pkCNo/71ukTHfiDKmnZjODXg\nKNF0lR4N4C8OB7MReA0d3T2q2VS+aEvfRfNjU/FM9X2g3c4MX87qB17Duv6Rq/wX\nJC8bTAVDXM5UmbPG9H8/l7G1tlA6MVKON0m/CBWgUQKBgQCCsxyXbAEYlvQ8DOjy\nkXUPAgiEUOr9WOvTPqVXgdzyu9b4LYA6er6S7NqUM4oqQczb05FRO74bXXzjVcjy\naJgoWUby3V5JRJnxHwHm52qTnV3XoS26k6VCPyQ+yo6D2T8wPSlKcNAWAKS9g9at\nVB2E3uPwFPCgG22eeCKmvqWvhg==\n-----END PRIVATE KEY-----\n",
                "*****@*****.**",
                "101423117111183978751",
                "https://accounts.google.com/o/oauth2/auth",
                "https://oauth2.googleapis.com/token",
                "https://www.googleapis.com/oauth2/v1/certs",
                "https://www.googleapis.com/robot/v1/metadata/x509/firebase-adminsdk-2wp9j%40iuc-market.iam.gserviceaccount.com"
                                     );

            if (FirebaseApp.DefaultInstance == null)
            {
                FirebaseApp.Create
                (
                    new AppOptions
                {
                    Credential = GoogleCredential.FromJson(JsonConvert.SerializeObject(config))
                }
                );
            }

            FirebaseAuthAdmin = FirebaseAdmin.Auth.FirebaseAuth.DefaultInstance;
        }
Exemplo n.º 2
0
        public async void Upload(FileStream stream, string fileName)
        {
            var auth = new Firebase.Auth.FirebaseAuthProvider(new Firebase.Auth.FirebaseConfig(ApiKey));
            var a    = await auth.SignInWithEmailAndPasswordAsync(AuthEmail, AuthPassword);

            // You can use CancellationTokenSource to cancel the upload midway
            var cancellation = new CancellationTokenSource();

            var task = new Firebase.Storage.FirebaseStorage(
                Bucket,
                new Firebase.Storage.FirebaseStorageOptions
            {
                AuthTokenAsyncFactory = () => Task.FromResult(a.FirebaseToken),
                ThrowOnCancel         = true // when you cansel the upload, exception is thrown, By default no exception is thrown
            })
                       .Child("images")
                       .Child(fileName)
                       .PutAsync(stream, cancellation.Token);

            try
            {
                // error during upload will be thrown when await the task
                string link = await task;
            }
            catch (Exception ex)
            {
                Console.WriteLine("Exception was thrown: {0}", ex);
            }
        }