protected override MultipartData GetRequestData(TypedData data) { var builder = new MultipartDataBuilder(); builder.KeyValuePair("key", Settings.Default.imgurApiKey); builder.KeyValuePair("name", data.Name); builder.File((Stream) data.Data, "image", data.Name); return builder.GetData(); }
protected override MultipartData GetRequestData(TypedData data) { var builder = new MultipartDataBuilder(); builder.File((Stream) data.Data, "upload", data.Name); builder.KeyValuePairs(new Dictionary<string, string> { // FIXME Remove and adjust as required. Just copy-pasted all // this from the main page. (Don't shoot me.) { "mode", "local" }, { "formurl", "http://www.postimage.org/" }, { "tpl", "." }, { "addform", "" }, { "mforum", "" }, { "um", "image" }, { "adult", IsAdult ? "yes" : "no" }, { "ui", "" }, { "hash", "943" }, { "optsize", "0" }, { "submit", "Upload It!" }, }); return builder.GetData(); }
public TypedData Process(TypedData data, IMutableProgressTracker progress, CancellationToken cancelToken) { var parameters = new { FileName = data.Name, }; var dataBuilder = new MultipartDataBuilder(); foreach (var parameter in PostParameters) { if (parameter.Key == null) { continue; } dataBuilder.KeyValuePair(parameter.Key, StringLib.HartFormatter.HartFormat(parameter.Value, parameters)); } dataBuilder.File((Stream) data.Data, FileParameterName, data.Name); progress.Status = "Uploading data"; var response = HttpRequest.Execute(Uri, dataBuilder.GetData(), HttpRequestMethod.Post, progress, cancelToken); return TypedData.FromUri(response.ResponseUri, data.Name); }
protected override MultipartData GetRequestData(TypedData data) { var builder = new MultipartDataBuilder(); builder.File((Stream) data.Data, "f", data.Name); builder.KeyValuePairs(new Dictionary<string, string> { { "t", "file" }, { "name", data.Name ?? "" }, { "tags", Tags ?? "" }, { "description", Description ?? "" }, { "adult", IsPrivate ? "t" : "f" }, { "sfile", "Upload" }, { "url", "" }, }); return builder.GetData(); }