Я создаю приложение, в котором
- пользователь может загрузить текстовый файл, а затем
- найти наиболее используемое слово и изменить это слово в тексте, а
- показать измененный текст для пользователя.
если это возможно, я бы хотел
- получить текстовое содержимое файла перед загрузкой при вызове метода Post и сохранить его content
, поэтому я добавляю метод «DownloadTextAsyn c ()» в метод POST, но кажется, что я вызываю этот метод не для того субъекта?
[HttpPost("UploadText")]
public async Task<IActionResult> Post(List<IFormFile> files)
{
string connectionString = Environment.GetEnvironmentVariable("mykeystringhere");
// Create a BlobServiceClient object which will be used to create a container client
BlobServiceClient blobServiceClient = new BlobServiceClient(connectionString);
//Create a unique name for the container
string containerName = "textdata" + Guid.NewGuid().ToString();
// Create the container and return a container client object
BlobContainerClient containerClient = await blobServiceClient.CreateBlobContainerAsync(containerName);
// Create a local file in the ./data/ directory for uploading and downloading
string localPath = "./data/";
string fileName = "textfiledata" + Guid.NewGuid().ToString() + ".txt";
string localFilePath = Path.Combine(localPath, fileName);
// Get a reference to a blob
BlobClient blobClient = containerClient.GetBlobClient(fileName);
// Open the file and upload its data
using FileStream uploadFileStream = System.IO.File.OpenRead(localFilePath);
await blobClient.UploadAsync(uploadFileStream, true);
uploadFileStream.Close();
string downloadFilePath = localFilePath.Replace(".txt", "DOWNLOAD.txt");
// Get the blob file as text
string contents = blobClient.DownloadTextAsync().Result;
//return the string
return contents;
//if (uploadSuccess)
// return View("UploadSuccess");
//else
// return View("UploadError");
}
У меня проблемы:
Я понял, что blobClient - это ссылка на большой двоичный объект, где я могу получить данные файла, но это необходимо быть неправым?
Также кажется, что я не могу использовать ни CloudBlobContainer, ни CloudBlockBlob blob. Это потому, что внутри метода POST большой двоичный объект был только что инициализирован и не существует, когда выполняются эти двойки?
Также, когда я проверяю метод POST, консоль выдает «Отказано» загрузить шрифт '', поскольку он нарушает следующую директиву политики безопасности содержимого: "default-sr c 'none'". Обратите внимание, что «font-sr c» не был задан явно, поэтому «default-sr c» используется в качестве запасного варианта ». который я погуглил, но понятия не имею, что это значит? Я пробовал разные способы, но продолжаю получать НЕВОЗМОЖНО ПОЧТУ / «Но я не смог найти ответы solid. Может ли это быть связано с моим методом POST?