Форум программистов, компьютерный форум, киберфорум
C#: Веб-сервисы, WCF
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.50/312: Рейтинг темы: голосов - 312, средняя оценка - 4.50
 Аватар для NaGuWaL
17 / 14 / 0
Регистрация: 22.04.2016
Сообщений: 287
13.10.2016, 09:25
Студворк — интернет-сервис помощи студентам
Что-то я совсем разленился. Нашёл прогу для хэшовыковыривания файлов. От Маздайки))) Вот ссылка для скачивания проги.

Секрет следующий. exe шник кладём в System32 запускаем консоль и пишим
C#
1
fciv -add D:\file_patch.txt -xml D:\file_patch.xml
В результате получаем xml с необходимым нам хошем в правельном формате для передачи в Http-Header)))
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
13.10.2016, 09:25
Ответы с готовыми решениями:

Интеграция с ГИС ЖКХ. Подпись SOAP и защита канала по ГОСТ (5)
Предыдущая тема: https://www.cyberforum.ru/web-services-wcf/thread1840159.html И так мы Я и umatkot, Берёмся за реализацию всего этого...

Интеграция с ГИС ЖКХ. Подпись SOAP и защита канала по ГОСТ (4)
Предыдущая тема: https://www.cyberforum.ru/web-services-wcf/thread1800721.html Здравствуйте. Подскажите, пожалуйста: делаю getState...

Интеграция с ГИС ЖКХ. Подпись SOAP и защита канала по ГОСТ
Здравствуйте! Передо мной стоит задача интеграции с системой ГИС ЖКХ (https://dom.gosuslugi.ru/) программой, написанной на языке...

400
 Аватар для NaGuWaL
17 / 14 / 0
Регистрация: 22.04.2016
Сообщений: 287
13.10.2016, 09:29
Привожу скрины залитого файла на сторону ланита:
Миниатюры
Интеграция с ГИС ЖКХ. Подпись SOAP и защита канала по ГОСТ (3)   Интеграция с ГИС ЖКХ. Подпись SOAP и защита канала по ГОСТ (3)  
0
13 / 13 / 0
Регистрация: 25.01.2016
Сообщений: 38
13.10.2016, 10:07
Может кому будет полезно:
Столкнулся с ошибкой: Не удалось установить безопасный канал для SSL/TLS с полномочиями "api.dom.gosuslugi.ru" (эта ошибка часто тут всплывала).
Месяц не трогал проект и на своем компе не запускал - разработку вел коллега. Единственное обновилась windows 10 (была так же 10-ка, но какие-то большие обновления были) за это время. Помогла установка более свежего релиза CryproPro.CSP 4.0 R2.
0
 Аватар для hhmm
67 / 58 / 1
Регистрация: 01.04.2016
Сообщений: 346
13.10.2016, 20:50
Цитата Сообщение от Araney Посмотреть сообщение
Помогла установка более свежего релиза CryproPro.CSP 4.0 R2.
Именно свежего релиза?

У меня КриптоПро отваливается после установок из Windows Update, когда обновляются библиотеки CLR.
Я так понимаю, что КриптоПро подсчитывает хэши библиотек при установке и когда они обновляются- отказывается работать.

Удаление и установка (с перезагрузками) того же самого КриптоПро 3.9 решает проблему.
0
1 / 1 / 0
Регистрация: 27.09.2016
Сообщений: 16
14.10.2016, 06:29
Наконец разобрался в чем проблема при загрузки файлов, почему сервера ГИС отдавали 400 ошибку,
Во 1, серверу требуется чтобы Заголовок и сами данные файла были в разных пакетах при выолнении PUT иначе 400 ошибка
Во 2, требуется использования верного X-Upload-OrgPPAGUID, иначе 400.

Рабочий пример на Delphi
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
function idMD5HashStream(MS:TMemoryStream):string;
var
idMD5:TIdHashMessageDigest5;
Hash:TidBytes;
begin
idMD5:=TIdHashMessageDigest5.Create;
hash:=idMD5.HashStream(MS);
Result:=TIdEncoderMIME.EncodeBytes(Hash);
idMD5.Free;
end;
 
 
function GkhSimpleUpload(uploadfile:string):string;
var
HTTP:TidHTTP;
UploadData,ResponseData:TMemoryStream;
begin
try
Result:='';
ResponseData:=TMemoryStream.Create;
UploadData:=TMemoryStream.Create;
UploadData.LoadFromFile(uploadfile);
HTTP:=TIdHTTP.Create();
  //****Auth
  HTTP.Request.Username:='lanit';
  HTTP.Request.Password:='';
  HTTP.Request.BasicAuthentication:=True;
  //****
HTTP.ProtocolVersion:=pv1_1;
HTTP.HTTPOptions:=[hoKeepOrigProtocol];
HTTP.Request.Date:=Now;
HTTP.Request.CustomHeaders.AddValue('Content-MD5',idMD5HashStream(UploadData));
HTTP.Request.CustomHeaders.AddValue('X-Upload-OrgPPAGUID',PPAGUID);
HTTP.Request.CustomHeaders.AddValue('X-Upload-Filename',ExtractFileName(uploadfile));
HTTP.Request.UserAgent:='';
HTTP.Request.Accept:='';
HTTP.Request.AcceptEncoding:='';
        try
        HTTP.PUT('http://127.0.0.1:8080/ext-bus-file-store-service/rest/homemanagement/',UploadData,ResponseData);
        except
        //***ADD LOG***
        //For logs ->HTTP.Response.RawHeaders.GetText;
        end;
 
        if HTTP.ResponseCode=200 then
        begin
        Result:=HTTP.Response.RawHeaders.Values['X-Upload-UploadID'];
        end;
finally
UploadData.Free;
ResponseData.Free;
HTTP.Free;
end;
end;
0
 Аватар для NaGuWaL
17 / 14 / 0
Регистрация: 22.04.2016
Сообщений: 287
14.10.2016, 08:35
kroligoff, А вы видимо не ознакамливались, с мной приведёнными скринами? Но суть передачи БОЛЬШИХ файлов кусками осталась прежней 1байт сжирает логика настройки ситов....

Добавлено через 4 минуты
hhmm, Поставь Крипто про 4 и не парься, до следующих выборов я думаю хватит...^_^
0
1 / 1 / 0
Регистрация: 27.09.2016
Сообщений: 16
14.10.2016, 08:53
NaGuWaL,
Я со всеми скриптами ознакомился и с Вашими в том числе,
Но фишка в том что....
В C# HttpRequestMessage автоматически разбивает на 2 пакета, 1-пакет заголовок, 2-пакет данные
idHTTP делает также,
но первоначально я использовал Synapse и он данные отправлял все в 1 пакете, что по стандарту не запрещено, но такие данные не принимает сервер Ланита, без указания конкретной ошибки.

Пришлось смотреть пакеты tcp и Ваш пример (который сделан для Visual Studio C#) , после этого все стало понятно.

Добавлено через 8 минут
с POSTER видимо я до такой степени замучился с основным проектом, что то сделал там не то
0
 Аватар для NaGuWaL
17 / 14 / 0
Регистрация: 22.04.2016
Сообщений: 287
14.10.2016, 08:57
kroligoff, А при чём тут C#? Я привёл примеры сгенеренные в том плагине в Файрфоксе который вы использовали для генерации вопроса О_о. Ну о том что хедер от контента нужно отделять написанно в манах, примерах ну и на форуме)))...

Добавлено через 4 минуты
kroligoff, Ну а что в POSTERS'е можно было сделать не так О_о? Этож обычный генератор запросов... Там нет ничего сер-естественного...
0
1 / 1 / 0
Регистрация: 27.09.2016
Сообщений: 16
14.10.2016, 09:03
Использовал X-Upload-Dataprovider вместо X-Upload-OrgPPAGUID
0
 Аватар для NaGuWaL
17 / 14 / 0
Регистрация: 22.04.2016
Сообщений: 287
14.10.2016, 09:10
kroligoff, Вам надо ООООчень внимательно почитать "Альбом ТФФ" там X-Upload-OrgPPAGUID использовался в версии 9.0.1.4.1, а на данный момент 10.0.2.2

Добавлено через 1 минуту
kroligoff, Посмотрите внимательно на мои последнии скрины... Там указан хедер который отвечает за идентификатор поставщика данных...

Добавлено через 52 секунды
Мне всё больше кажется что я мутирую в адекватного САПОРТ-разраба ланита((( И это печально...
0
1 / 1 / 0
Регистрация: 27.09.2016
Сообщений: 16
14.10.2016, 09:14
По идее должен был сделан такой же ресурс-форум - но от Ланит, где обсуждаются такие вопросы, разбираются подобные грабли.
Но видимо перед Ланит стоит другая задача.

Все равно огромное спасибо за потраченное время.
хоть и успел решить проблему самостоятельно.
Загрузка работает, файл загружается, к договору прицепляется - с хешом госта)
0
2 / 2 / 0
Регистрация: 03.02.2014
Сообщений: 29
14.10.2016, 10:32
Ребята 1с ники как вы создаете защищенное соединение не через МагПро.
Через ЗащищенноеСоединениеOpenSSL непонятно что за сертификаты нужны.
0
0 / 0 / 0
Регистрация: 12.11.2015
Сообщений: 9
17.10.2016, 06:33
В 1С через криптотунель, запросы нужно формировать вручную и отправлять через HTTPСоединение методом Post
0
2 / 2 / 0
Регистрация: 03.02.2014
Сообщений: 29
17.10.2016, 09:08
Хотите сказать что смысла нет, работать в 1с через веб сервисы, только вручную xml собирать, неужто все так сейчас работают.
0
0 / 0 / 0
Регистрация: 12.11.2015
Сообщений: 9
17.10.2016, 10:11
А Вы разберите пример демо-приложения по формированию и отправке запросов в ГИС ЖКХ на .NET, там также вручную формируется запрос.
В 1С WSПрокси не позволяет изменять формируемый xml запрос, в связи с этим возникает проблема с добавлением подписи в запрос
0
1 / 1 / 0
Регистрация: 27.09.2016
Сообщений: 16
17.10.2016, 10:35
Для этого можно использовать скрипт на Perl+OpenSSL для добавления подписи ГОСТ.
Сохраняется SOAP, вызывается скрипт, подписывается, загружается SOAP обратно,но с подписью, далее отправляется на сервер ГИС.
Хоть выглядит коряво, но если ничего другого нет, то сойдет за рабочий вариант.
Как еще плюс не нужен будет КриптоПро.
Если интересно могу выложить.

Добавлено через 6 минут
Пример настройки и использования
https://habrahabr.ru/post/300856/
0
0 / 0 / 0
Регистрация: 12.11.2015
Сообщений: 9
17.10.2016, 10:35
Добавить подпись в текст soap не проблема. В 1С каким образом получишь сам soap?
0
1 / 1 / 0
Регистрация: 27.09.2016
Сообщений: 16
17.10.2016, 10:45
Я не программист 1С, но разве 1С не позволяет импортировать WSDL схему?, и получить готовые функции.
https://habrahabr.ru/post/148658/
0
0 / 0 / 0
Регистрация: 12.11.2015
Сообщений: 9
17.10.2016, 11:02
Импортировать WSDL мы можем, но платформа 1С не позволяет выгружать перед отправлением soap-запрос.
0
9 / 8 / 0
Регистрация: 20.05.2016
Сообщений: 153
17.10.2016, 12:04
Цитата Сообщение от NaGuWaL Посмотреть сообщение
Мне всё больше кажется что я мутирую в адекватного САПОРТ-разраба ланита((( И это печально...
))) У них и вакансии есть... ;-)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
17.10.2016, 12:04

.NET 4.x Интеграция с ГИС ЖКХ. Подпись SOAP и защита канала по ГОСТ (2)
Начало темы здесь: https://www.cyberforum.ru/web-services-wcf/thread1615223.html umatkot, Да, к этому и пришел....а на дворе 1 июля ...

Интеграция с ГИС ЖКХ и подпись SOAP без Крипто .NET и stunnel
Решил создать отдельную тему, так как в теме Интеграция с ГИС ЖКХ. Подпись SOAP и защита канала по ГОСТ (4) - C# WCF уже можно заблудиться....

Soap, Java, Гис ЖКХ
Добрый день! Имеет ли кто опыт работы с soap в Java? Поставлена задача наладить работу с ГИС ЖКХ, До этого не работал с SOAP, почитал все...

1С и ГИС ЖКХ. Интеграция
Доброго дня, коллеги! Я думаю многие слышали о такой ГИС, как ЖКХ. Друзья, сталкивался ли кто нибудь с задачей интеграции с этой...

Интеграция с ГИС ЖКХ (ГЖ). 400 Bad request
Вводная: 1. C#. Классы proxy для работы с API генерятся утилитой SvcUtil.exe из wsdl-ек. 2. При срабатывании форматно-логического...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
320
Закрытая тема Создать тему
Новые блоги и статьи
Саморегулирующийся социальный контракт для сервера cross-section.
Hrethgir 14.08.2026
С кодом конечно таких глубоких размышлений пока не было, впрочем я уже привык к алгоритмизации. Суть предмета записи: снова в диалоге с нейросетью (я взял пока себе ник для учётки админа - Rector). . . .
Часы электронные
Uhbif79 12.08.2026
Выкладываю программу часов. Программа позволяет: 1. Использовать системное время и дату, 2. Есть возможность вводить время и дату вручную. 3. Реализованы 2 будильника: начало и конец рабочего дня. . . .
Часы с будильником на основе класса QLCDNumber
Uhbif79 12.08.2026
Всем добрый день, выкладываю программу часов с будильником на основе класса QLCDNumber. Здесь я пробовал самостоятельно создавал классы, впервые столкнулся с видимостью переменной одного класса из. . .
Установка MinGW GCC 16.2 и CMake
8Observer8 10.08.2026
VK Видео: https:/ / vkvideo. ru/ video-240781534_456239017 YouTube: eY5-5PyI9NM Текстовая версия
Неделя из жизни имитационной модели склада: мои кривые руки растут, откуда надо
anaschu 10.08.2026
Неделя из жизни имитационной модели склада: как я почти написал неправильную логику и что с этим делать Работаю сейчас над учебно-рабочим проектом: строю в AnyLogic имитационную модель процессов. . .
Калькулятор для расчета родства
russiannick 07.08.2026
1. Задача: Создать калькулятор для расчета родства. Родственных связей существует 8 ступеней, такие как: p - отец P - мать q - муж Q - жена b - брат B - сестра s - сын S - дочь
Мир по моей воле
kumehtar 07.08.2026
Когда-то кажется, что всё просто. Ты весь такой светлый. Причиняешь добро. Борешься за справедливость в этом тёмном мире. Потом начинаешь замечать одну неприятную вещь. Почти каждый хороший. . .
Кредитный калькулятор
Maks 05.08.2026
Решение задачи по прикладной информатике средствами 1С. Задача: Напишите приложение-калькулятор, которое помогает рассчитывать параметры кредита для аннуитетного и дифференцированного видов. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru