Здравствуйте. Помогите пожалуйста, существует на странице форма, которая принимает файл. Мне нужно загрузить файл через эту форму .
У меня есть адрес страницы, куки после авторизации .
В заголовках запроса(смотрел в консоле браузера) есть следуйщие параметры:
------WebKitFormBoundarySM5d7XYS2AzlAVLv
Content-Disposition: form-data; name="fileUpload[uploadFile]"
------WebKitFormBoundarySM5d7XYS2AzlAVLv
Content-Disposition: form-data; name="fileUpload[uploadFile]"; filename=""
Content-Type: application/octet-stream
------WebKitFormBoundarySM5d7XYS2AzlAVLv
Content-Disposition: form-data; name="yt0"
Загрузить
------WebKitFormBoundarySM5d7XYS2AzlAVLv--
Не могу правильно сформировать запрос .
Код html страницы:
<form enctype="multipart/form-data" id="file-upload-importWln-form" action="/backend/units/importWln/id/43656" method="post">
<div class="row">
<label for="fileUpload_uploadFile">Загрузить файл</label>
<input id="ytfileUpload_uploadFile" type="hidden" value="" name="fileUpload[uploadFile]">
<input name="fileUpload[uploadFile]" id="fileUpload_uploadFile" type="file">
</div>
<div class="row buttons">
<input class="button" type="submit" name="yt0" value="Загрузить">
</div>
</form>
Использовал такой код:
var client = new RestClient(tempUrl);
client.CookieContainer = cookie;
var request = new RestRequest(Method.POST);
request.AddHeader("cache-control", "no-cache");
request.AddHeader("name", "fileUpload[uploadFile]");
request.AddHeader("content-type", "multipart/form-data; boundary=----WebKitFormBoundary" + DateTime.Now.Ticks.ToString("x"));
request.AddParameter("multipart/form-data; boundary=----WebKitFormBoundary"+ DateTime.Now.Ticks.ToString("x") + ", ------WebKitFormBoundary" + DateTime.Now.Ticks.ToString("x") + "\r\nContent-Disposition: form-data; name=\"\"; filename=\"" + file + "\"\r\nContent-Type: false\r\n\r\n\r\n------WebKitFormBoundary" + DateTime.Now.Ticks.ToString("x"), ParameterType.RequestBody);
request.AddFile("filename", File.ReadAllBytes(file), getOnlyName(file));
request.AddParameter("boundary=----WebKitFormBoundary" + DateTime.Now.Ticks.ToString("x") + "Content-Disposition: form-data; name=\"yt0\"" + "Загрузить" + ", ------WebKitFormBoundary" + DateTime.Now.Ticks.ToString("x"), ParameterType.RequestBody);
IRestResponse response = client.Execute(request);
string rep1 = response.ToString();
Я предлагаю использовать Postman, после успешнего отправление файла вы можете скопировать код с Postmana для отправки файла. Понадобиться Restsharp
Оборудование для ресторана: новинки профессиональной кухонной техники
Частный дом престарелых в Киеве: комфорт, забота и профессиональный уход
Как сделать поиск через TextBox по RichTextBox? Есть пример кода с англоязычного форумаПодскажите как это можно использовать или же сделать
Есть небольшой код (парсер), берет JSON из вывода web-сервераИспользую так: