Я использую MegaApiClient
в моем C# проекте. Я хочу загрузить файл со своего компьютера в мое мега облако. Я использую двухфакторную аутентификацию в своем мега-аккаунте. Когда я выключаю 2fa
, я могу войти в систему и загрузить файл. Однако я хочу войти в систему с помощью 2fa
и загрузить файл. Мои коды здесь. Спасибо.
public async Task UploadToMega(string megaFolderName, string megaFolderID, string filePathOnComputer)
{
//Start Mega Cient
var myMegaClient = new MegaApiClient();
//Login To Mega
myMegaClient.Login("email@gmail.com", "password");
//Get All (File & Folders) in Mega Account
IEnumerable<INode> nodes = myMegaClient.GetNodes();
//Creat List Of All Folders In Mega Account
List<INode> megaFolders = nodes.Where(n => n.Type == NodeType.Directory).ToList();
//Choose Exist Folder In Mega Account By Name & Id
INode myFolderOnMega = megaFolders.Where(folder => folder.Name == megaFolderName && folder.Id == megaFolderID).FirstOrDefault();
//Upload The File
//Normal Upload
//INode myFile = myMegaClient.UploadFile(filePathOnComputer, myFolderOnMega);
var progress = new Progress<double>();
progress.ProgressChanged += (s, progressValue) =>
{
//Update the UI (or whatever) with the progressValue
progressBar1.Value = Convert.ToInt32(progressValue);
};
if (uploadCancellationTokenSource.IsCancellationRequested)
{
uploadCancellationTokenSource.Dispose();
uploadCancellationTokenSource = new CancellationTokenSource();
}
// Upload With progress bar
INode myFile = await myMegaClient.UploadFileAsync(filePathOnComputer, myFolderOnMega, progress, uploadCancellationTokenSource.Token);
//Get Download Link
Uri downloadLink = myMegaClient.GetDownloadLink(myFile);
}