C# 2captcha сообщение с Base64 - PullRequest
0 голосов
/ 15 февраля 2020

C# 2captcha image post

         HttpClient client = new HttpClient();
         var bytes = File.ReadAllBytes("sample.jpg");

         var base64 =   Convert.ToBase64String(bytes);

         var secretKey = "8ffa...";
         var url = "https://2captcha.com/in.php?key=" + secretKey;

         using ( client = new HttpClient())
         {
             var content = new StringContent(base64);

             var response = await client.PostAsync(url , content);

             var stringResponse = await response.Content.ReadAsStringAsync();

             Console.WriteLine(stringResponse);
             Console.ReadLine();

Каждый мой ответ ERROR_ZERO_CAPTCHA_FILESIZE, и я не знаю, в чем проблема.

1 Ответ

0 голосов
/ 18 февраля 2020

ERROR_ZERO_CAPTCHA_FILESIZE означает, что размер изображения составляет менее 100 байт (НЕ килобайт). Вы должны тщательно проверить, правильно ли вы отправляете изображение. Вот пример правильного образца формы Base64:

<form method="post" action="https://2captcha.com/in.php">
<input type="hidden" name="method" value="base64">
<input type="text" name="key" value="YOUR_APIKEY">
<textarea name="body">BASE64_FILE</textarea>
<input type="submit" value="Upload and get the ID">
</form>

Возможно, проблема в файле sample.jpg. Попробуйте закодировать в base64 реальную картинку с изображением капчи (вы можете взять ее на странице входа в систему 2captcha). Текстовая строка base64 должна иметь вес файла изображения, поэтому она должна быть не менее нескольких килобайт.

...