private async Task <string> GetAsync(object param) { var builder = new UriBuilder(DefaultSettings.YandexDiskUrlUpload) { Query = param.ToString() }; var url = builder.ToString(); var yandHttpClient = new YandexHttpClient(_yandUploader.Token); var response = await yandHttpClient.GetAsync(url); var responseBody = await response.Content.ReadAsStringAsync(); return(responseBody); }
public async Task UploadAsync(string pathFile, string pathSave, UploadProgress progress, CancellationToken cancelToken = default) { Stream stream = new FileStream(pathFile, FileMode.Open, FileAccess.Read, FileShare.ReadWrite); var uploadLink = await GetUploadLinkAsync(pathSave); var fileName = Path.GetFileName(((FileStream)stream).Name); var streamContent = new YandexStreamContent(stream); streamContent.ProgressChanged += (bytes, currBytes, totalBytes) => progress.UpdateProgress(currBytes, totalBytes, fileName); var content = new MultipartFormDataContent { { streamContent, "file", fileName } }; using var yandHttpClient = new YandexHttpClient(_yandUploader.Token); await yandHttpClient.PostAsync(uploadLink.Href, content, cancelToken); }
private bool IsCorrectYandexDirectory(string path) { ResourseInfo directoryInfo = null; using (var yandHttpClient = new YandexHttpClient(_yandUploader.Token)) { var task = yandHttpClient.GetAsync(DefaultSettings.YandexDiskUrlCheck + path).ContinueWith((requestTask) => { var response = requestTask.Result; var json = response.Content.ReadAsStringAsync(); json.Wait(); directoryInfo = JsonConvert.DeserializeObject <ResourseInfo>(json.Result); }); task.Wait(); } return(directoryInfo.Name != null); }
public JobService(IConfiguration opt, DBLocalContext dB, YandexHttpClient client) { _settings = ConfigurationHelper.GetAppSettings(opt); _DB = dB; _client = client; }