Как я могу отправить PDF через RestSharp? - PullRequest
0 голосов
/ 11 апреля 2019

Я пытаюсь отправить PDF с помощью RestSharp.Я успешно загрузил через PostMan, затем я взял фрагмент кода, который был сгенерирован оттуда.Когда я запускаю этот код, я получаю успешный ответ, но PDF-файл, который он создает на сайте, пуст.

Я могу пройти аутентификацию в API и опубликовать документ, но прикрепление PDF-файла к указанному документу оказалось неудачным..

Всякий раз, когда я пытаюсь использовать RestClient.AddFile, я получаю сообщение об ошибке «неверный запрос» с сообщением «Файл / вложение пусто или пусто для документа [documentmentid].

Я такжепопытался использовать метод AddFileBytes, чтобы с той же ошибкой.

Я нашел другой пост, в котором они передавали файл через метод Restclient.Add (), но я не смог заставить это работать.

        byte[] bytes = File.ReadAllBytes(path);

        request.AddHeader("cache-control", "no-cache");
        request.AddHeader("Content-Type", "application/x-www-form-urlencoded");
        request.AddHeader("content-type", "multipart/form-data; boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW");
        request.AddParameter("multipart/form-data; boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW", "------WebKitFormBoundary7MA4YWxkTrZu0gW\r\nContent-Disposition: form-data; name=\"file\"; filename=" + path + "\r\nContent-Type: application/pdf\r\n\r\n\r\n------WebKitFormBoundary7MA4YWxkTrZu0gW--", ParameterType.RequestBody);
        //request.AddParameter("application/pdf", bytes, ParameterType.RequestBody);
        //request.AddFile("file", path);
        request.AddFileBytes("file", bytes, filename, "application/pdf");

        IRestResponse response = client.Execute(request);
        var content = response.Content;

        return response.Content;

Я ожидаю, что с сервера будет загружен правильный файл PDF.

...