Upload auf azure Blob Storage nicht möglich: Der Remote-Server hat einen Fehler zurückgegeben: (400) Ungültige Anforderung

8

Ich versuche ein Dienstprogramm zu erstellen, um eine Datei aus dem Internet herunterzuladen und sie erneut in den Azure-Blobspeicher zu laden. Blob-Container sind bereits gut erstellt; Aber aus irgendeinem Grund bekomme ich "Bad Request 400" Ausnahme, wenn ich versuchte, die Datei in den Speicher hochzuladen ... Container-Name wird erstellt, kleine Buchstaben, also Sonderzeichen. Aber ich weiß immer noch nicht, warum ich die Ausnahme bekomme!

Bitte helfen Sie.

Hinweis :

  • Ich verwende keinen Emulator ... Direktes Testen in der Cloud.
  • Alle meine Container mit der Zugriffsoption "Öffentlicher Container".

Hier ist die Ausnahme:

%Vor%

Und hier ist der Code:

%Vor%

Bearbeiten: Die Speicherausnahme

  

Microsoft.WindowsAzure.Storage.StorageException: Der Remote-Server hat einen Fehler zurückgegeben: (400) Ungültige Anforderung. --- & gt; System.Net.WebException: Der Remote-Server hat einen Fehler zurückgegeben: (400) Ungültige Anforderung.      bei System.Net.HttpWebRequest.GetRequestStream (TransportContext & amp; Kontext)      bei System.Net.HttpWebRequest.GetRequestStream ()      bei Microsoft.WindowsAzure.Storage.Core.Executor.Executor.ExecuteSync [T] (REST-Befehl 1 cmd, IRetryPolicy policy, OperationContext operationContext) --- End of inner exception stack trace --- at Microsoft.WindowsAzure.Storage.Core.Executor.Executor.ExecuteSync[T](RESTCommand 1 cmd, IRetryPolicy-Richtlinie, OperationContext operationContext)      bei Microsoft.WindowsAzure.Storage.Blob.CloudBlockBlob.UploadFromStreamHelper (Stream-Quelle, Nullable'1-Länge, AccessCondition-accessCondition, BlobRequestOptions-Optionen, OperationContext operationContext)      bei Microsoft.WindowsAzure.Storage.Blob.CloudBlockBlob.UploadFromStream (Stream-Quelle, AccessCondition accessCondition, BlobRequestOptions-Optionen, OperationContext operationContext)      an TelawatAzureUtility.StorageService. & lt; & gt; c__DisplayClass4.b__12 (Task-Task) in \ psf \ Home \ Dokumente \ Visual Studio 14 \ Projekte \ Telawat Azure-Dienstprogramm \ TelawatAzureUtility \ StorageService.cs: Zeile 128   Anfrage Informationen   Anfrage ID:   AnfrageDatum: Sa, 28 Jun 2014 20:12:14 GMT   StatusMessage: Ungültige Anforderung

Bearbeiten 2: Informationen anfordern:

Edit 3: Das Problem kommt von WebUtils .. Ich habe es durch den untenstehenden Code ersetzt und es funktioniert! Ich werde WeUtils Code hinzufügen, vielleicht können Sie helfen zu wissen, was das Problem damit ist.

%Vor%

WebUtils-Code:

%Vor%

Auch wenn ich diesen Code ausprobiert habe ... wird das 'Warten' niemals beendet oder abgeschlossen!

%Vor%     
bunjeeb 28.06.2014, 19:34
quelle

3 Antworten

20

Haben Sie versucht, einen Container manuell auf einem azure Portal zu erstellen? Es gibt einige Einschränkungen für den Namen, den Sie Containern geben können.

Beispiel: Der Name des Containers darf keine Großbuchstaben enthalten.

Wenn Sie einen Container mit einem ungültigen Namen anfordern, führt dies zu (400) Bad Request, den Sie erhalten. Überprüfen Sie also Ihre "containerName" Zeichenfolge.

    
siddhant 29.12.2014, 17:05
quelle
1

Ich hatte einen ganz anderen Fall von schlechter Anforderungsnachricht. Hier für irgendjemanden schreiben, der dasselbe treffen könnte. In meinem Fall habe ich nur Ressourcen über andere Ressourcengruppen hinweg bewegt. In diesem Shuffling erlaubte mir ein Fehler in Azur, meinen Speicher auf den Ort ("South East Asia") zu richten, der in meiner Region nicht verfügbar war. So haben alle Anfragen gegen das Speicherkonto die schlechte Anforderungsnachricht zurückgegeben. Es hat eine Weile gedauert, bis ich das herausgefunden habe, weil ich dann ein neues Speicherkonto erstellt habe, welches mir bei der Erstellung nicht erlaubte, "Südostasien" als einen Ort der Wahl auszuwählen, also wählte ich einen anderen Ort ("Ostasien ") und dann hat alles gut funktioniert.

    
Metal Latem 05.03.2016 08:03
quelle
0

Ich habe diesen Fehler auch bei den Azure Storage Message Queues erhalten.

Die Namen der Azure Storage Message Queue müssen ebenfalls aus Kleinbuchstaben bestehen. zB: "newqueuetitem" Name in Kleinbuchstaben.

%Vor%     
Alex 19.08.2017 13:35
quelle