Функция СделатьПодписанныйЗапросНаПул(ПулМайнинга, ДопПараметры) Экспорт TimeStampNice = GetЗапросNicehash(ПулМайнинга); СчетчикПовторов = 0; ОтветСоответствие = Неопределено; КлючApi = "755443a5-e22d-4af8-9fa0-0110b116552c"; СекрКлючApi = "bf9178a8-81c3-4dbd-a5bc-1361e3bb0e56db04125b-d4d0-4760-9f7b-a846e3d80f44"; TimeStamp = TimeStampNice; Nonce = Строка(Новый УникальныйИдентификатор); RequestId = ОбщегоНазначения.ПолучитьNonce(ТекущаяДата()); OrganisationID = "5f2f7195-fcd7-420a-afd8-4ba88bd49644"; ТипЗапроса = "GET"; ДопHTTP = "/main/api/v2/accounting/accounts2/"; //Разделитель = "⊠"; // \x00 \0 Разделитель = "\x00"; // \x00 \0 //Разделитель = "\0"; // \x00 \0 //Разделитель = Символы.НПП; //Разделитель = NULL; //Разделитель = "0x00"; НашЗапрос = КлючApi+Разделитель+TimeStamp+Разделитель+Nonce +Разделитель +Разделитель+ OrganisationID +Разделитель+Разделитель+ ТипЗапроса + Разделитель +"/main/api/v2/accounting/accounts2/"+ Разделитель; ФайлЗапроса = ПолучитьИмяВременногоФайла() + ".bot"; ФайлОтвета = ПолучитьИмяВременногоФайла() + ".bot"; ХешЗапрос = Шифрование.ЗашифроватьSHA256(НашЗапрос, СекрКлючApi); //ХешЗапрос = Шифрование.HMAC(НРег(ПолучитьHexСтрокуИзДвоичныхДанных(ПолучитьДвоичныеДанныеИзСтроки(СекрКлючApi))), НашЗапрос, "SHA256"); ЗаголовокHTTP = Новый Соответствие(); ЗаголовокHTTP.Вставить("X-Time", TimeStamp); ЗаголовокHTTP.Вставить("X-Nonce", Nonce); ЗаголовокHTTP.Вставить("X-Organization-Id",OrganisationID); ЗаголовокHTTP.Вставить("X-Request-Id", RequestId); ЗаголовокHTTP.Вставить("X-Auth", КлючApi+":"+ХешЗапрос); //ЗаголовокHTTP.Вставить("Content-Type", "application/x-www-form-urlencoded"); ЗаголовокHTTP.Вставить("Content-Type", "application/json; charset=utf-8"); Текст = Новый ЗаписьТекста(ФайлЗапроса, КодировкаТекста.UTF8, ""); Текст.ЗаписатьСтроку(НашЗапрос); Текст.Закрыть(); SSL = Новый ЗащищенноеСоединениеOpenSSL(Неопределено, Неопределено); Попытка НТТР = Новый HTTPСоединение("api2.nicehash.com",,,,,5, SSL); НТТР.ОтправитьДляОбработки(ФайлЗапроса, ДопHTTP, ФайлОтвета, ЗаголовокHTTP); Исключение //Сообщить("Отпал инет"); КонецПопытки; //Чтение файла-ответа Файл = Новый Файл(ФайлОтвета); Если Файл.Существует() Тогда ТекстОтвета = Новый ТекстовыйДокумент(); ТекстОтвета.Прочитать(ФайлОтвета); Если ТекстОтвета.КоличествоСтрок() > 0 Тогда ОтветСервера = ТекстОтвета.ПолучитьТекст(); #Если Клиент Тогда //Сообщить(ОтветСервера); ВыполнитьJSON(ОтветСервера); #КонецЕсли Иначе #Если Клиент Тогда Сообщить(ТипЗапроса); Сообщить("Отправка файла на сервер: Получен пустой ответ сервера."); #Иначе ЗаписьЖурналаРегистрации("HTTPСоединение", УровеньЖурналаРегистрации.Ошибка, , , "Получен пустой ответ сервера."); #КонецЕсли КонецЕсли; КонецЕсли; //Разрушаем объект HTTP-запроса для освобождения файла POST-запроса. //В противном случае при попытке удаления файла получим ошибку совместного доступа. ЗапросHTTP = Неопределено; //Удаляем файлы POST-запроса и фрагменты сообщения. Больше они не нужны. УдалитьФайлы(ФайлЗапроса); УдалитьФайлы(ФайлОтвета); КонецФункции