Reputation: 81
I Tried the Following Function to upload an image to Firebase Storage
private async void UploadFiles()
{
var stream = File.Open(@"D:\\Capture.png", FileMode.Open);
var auth = new FirebaseAuthProvider(new FirebaseConfig(ApiKey));
var a = await auth.SignInWithEmailAndPasswordAsync(AuthEmail, AuthPassword);
var cancellation = new CancellationTokenSource();
var task = new FirebaseStorage(
Bucket,
new FirebaseStorageOptions
{
AuthTokenAsyncFactory = () => Task.FromResult(a.FirebaseToken),
ThrowOnCancel = true // when you cancel the upload, exception is thrown. By default no exception is thrown
})
.Child("receipts")
// .Child("test")
.Child("Capture.png")
.PutAsync(stream, cancellation.Token);
task.Progress.ProgressChanged += (s, e) => textBox1 .Text =($"Progress: {e.Percentage} %");
// cancel the upload
// cancellation.Cancel();
try
{
// error during upload will be thrown when you await the task
textBox1 .Text =("Download link:\n" + await task);
}
catch (Exception ex)
{
MessageBox .Show( ex.Message);
}
}
Get me this error :
Exception occured while processing the request. Url: https://firebasestorage.googleapis.com/v0/b/gs://testingsupport-44f0b.appspot.com//o?name=receipts%2FCapture.png Response: { "error": { "code": 400, "message": "Invalid HTTP method/URL pair." } }
Upvotes: 3
Views: 7790
Reputation: 1463
You have to edit your Bucket
variable. Instead of using gs://xxxxx.appspot.com/
it should be only xxxxx.appspot.com
Upvotes: 2