Использование клиентской библиотеки JavaScript Azure для хранения, например, так:
function UploadImageToTemp(file) {
SendToServer2("GetSAS", "", "", function (sas) {
var blobUri = 'https://' + 'myApp' + '.blob.core.windows.net';
if (window.location.host === "localhost:43890" || window.location.host === "127.0.0.1:43890")
blobUri = "http://127.0.0.1:10000/devstoreaccount1/";
var blobService = AzureStorage.Blob.createBlobServiceWithSas(blobUri, sas);
var customBlockSize = file.size > 1024 * 1024 * 32 ? 1024 * 1024 * 4 : 1024 * 512;
blobService.singleBlobPutThresholdInBytes = customBlockSize;
var finishedOrError = false;
var speedSummary = blobService.createBlockBlobFromBrowserFile('imagetemp', file.name, file, { blockSize: customBlockSize }, function (error, result, response) {
finishedOrError = true;
if (error) {
console.log("Temp image upload failed");
} else {
console.log("Temp image upload succeeded");
}
});
//refreshProgress();
});
}
Когда вызов «SendToServer» запрашивает токен SAS из облачного приложения.Быстрая проверка, выполняем ли мы локально в эмуляторе, а затем остальная часть кода копируется и вставляется с сайта Azure ( здесь ).
В результате вызова blobService.createBlockBlobFromBrowserFile
получается:
HTTP400: BAD REQUEST - The request could not be processed by the server due to invalid syntax.
(XHR)OPTIONS - http://127.0.0.1:10000/devstoreaccount1/imagetemp/barry.jpg?sv=2017-04-17&sr=c&sig=3R8NNe%2BA%2BLs1ZhIxMXevH%2FW7jvvkvYVYHKRZz67SWBg%3D&se=2018-10-18T19%3A26%3A06Z&sp=rwl&api-version=2018-03-28
Есть идеи, что я делаю не так?