with started pricing getting example cloudblobcontainer cloudblobclient bloque almacenamiento rest azure azure-storage azure-storage-blobs

rest - started - ¿Por qué Azure devuelve 404 Recurso no encontrado en respuesta a una solicitud PUT blob?



getting started with azure storage (3)

Estoy intentando hacer una solicitud PUT para crear un nuevo BLOB. Después de algunos problemas iniciales con el encabezado Authorization, ahora obtengo un error 404 Resource Not Found cuando intento PONER un archivo en un contenedor.

Estoy bastante seguro de que tengo la URL correcta:

https://accountNameHere.blob.core.windows.net/containerNameHere

Revisé y volví a verificar para asegurarme de incluir el nombre del contenedor y el nombre de la cuenta, y ambos son correctos.

¿Qué más podría estar causando esto (aparte de la clara posibilidad de que estoy haciendo todo mal)?

Editar para agregar:

Aquí hay encabezados de solicitud sin formato:

PUT /testss HTTP/1.1 Host: accountName.blob.core.windows.net Accept: */* Connection: Keep-Alive 0: content-encoding 1: content-language 2: content-length 3: content-md5 4: content-type 5: date 6: if-modified-since 7: if-match 8: if-none-match 9: if-unmodified-since 10: range x-ms-blob-type: BlockBlob x-ms-version: 2011-08-18 x-ms-date: Fri, 09 Aug 2013 04:17:59 GMT Content-Length: 126377 Authorization: SharedKey accountName:MBVLmoxzxZr+tf8EZw2GkbFLEHuNn8FNAaEHrcty/cM= Expect: 100-continue

Aquí está la cadena para firmar que envié:

PUT x-ms-blob-type:BlockBlob x-ms-date:Fri, 09 Aug 2013 04:03:20 GMT x-ms-version:2011-08-18 /accountName/test

Y esto es lo que esperaban:

PUT 126377 x-ms-blob-type:BlockBlob x-ms-date:Fri, 09 Aug 2013 04:02:17 GMT x-ms-version:2011-08-18 /accountName/test

La única diferencia entre los dos es el 126377 después de PUT . Esa es la longitud del contenido del archivo, pero no estoy seguro de cómo eliminarlo.


¿Ha revisado la configuración de seguridad del contenedor Blob? Es posible que no tenga suficientes derechos de acceso.


Debería usar Fiddler para verificar que está enviando la solicitud que cree que es. A continuación, puede comparar la solicitud de Fiddler con la documentación.

¿El contenedor ya existe? Vale la pena utilizar un explorador de almacenamiento de terceros para verificar que lo haga.


Revisa tu contenedor. En el nuevo portal, haga clic en las elipses junto a él y Editar. Luego, configure el tipo de Acceso en Blob o en Contenedor si desea permitir la inclusión del contenedor.

Microsoft parece haber aumentado la seguridad e hizo privados nuevos contenedores por defecto.