|
Получение файла. HTTP-сервис. | ☑ | ||
---|---|---|---|---|
0
12040
31.03.17
✎
00:01
|
Добрый день.
1С:Предприятие 8.3 (8.3.9.1850) Документооборот 8 КОРП, редакция 1.4 (1.4.1.9) Через HTTP-сервис передается файл. Нужно положить переданный файл в Документооборот. Как его расшифровать из полученных данных? ТелоСтрока = Запрос.ПолучитьТелоКакСтроку(); В пер-й ТелоСтрока сейчас: "Content-Disposition: form-data; name="File1";filename = "screen1.png" Content-Type: application/octet-stream Content-Transfer-Encoding:binary" Далее закодированные данные |
|||
1
France
31.03.17
✎
00:04
|
далее закодированный ответ..
|
|||
2
Юрий Лазаренко
31.03.17
✎
00:15
|
ДвоичныеДанные
|
|||
3
oleg_km
31.03.17
✎
10:17
|
(2) Далее или записать в файл, или создать картинку или сохранить в ХранилищеЗначений
|
|||
4
12040
31.03.17
✎
11:41
|
Тогда так:
ДвоичныеДанные = Запрос.получитьТелоКакДвоичныеДанные(); А надо ли отделять файл от параметров? У меня же не только файл принимается. Если надо, то не понимаю, как это сделать. Что-то такое: получаю как строку-> вычленяю файл-> преобразую в ДвоичныеДанные-> записсываю в ХранилщеЗначения? |
|||
5
Лефмихалыч
31.03.17
✎
12:11
|
(4) получитьТелоКакДвоичныеДанные() возвращает тебе только файл
|
|||
6
12040
31.03.17
✎
15:03
|
(5) Спасибо.
ДвоичныеДанные = Запрос.получитьТелоКакДвоичныеДанные(); ХЗ = Новый ХранилищеЗначения(ДвоичныеДанные); Как теперь создать элемент справочника Файлы, чтобы он брал отсюда файл? |
|||
7
12040
31.03.17
✎
18:46
|
Точно ли получитьТелоКакДвоичныеДанные() возвращает только файл?
Сделал следующее: ДвоичныеДанные = Запрос.получитьТелоКакДвоичныеДанные(); ДвоичныеДанные.Записать("C:\1CBaseEAD_Files\textfile.txt"); В итоге в записанном файле вижу весь запрос, а не только "PROBA_PERA". --1BEF0A57BE110FD467A Content-Disposition: form-data; name="usr" Иванов Иван Иванович --1BEF0A57BE110FD467A Content-Disposition: form-data; name="pwd" Password1 Content-Disposition: form-data; name="File1"; filename="1SHTTP.txt" Content-Type: application/octet-stream Content-Transfer-Encoding: binary PROBA_PERA --1BEF0A57BE110FD467A-- |
|||
8
12040
31.03.17
✎
19:59
|
Когда передал в запросе только файл, тогда нормально файл создался (не обяз. текстовый). Остается вопрос, как вычленить файл из "большого" запроса. Или можно сделать вообще как-то иначе?
|
|||
9
oleg_km
31.03.17
✎
20:34
|
(8) Я пользую дотНЕТ по методу Сергея Смирнова. Но многие считают, что это очень сложно
|
|||
10
12040
31.03.17
✎
21:35
|
(9) Можно ссылочку?
|
|||
11
Fragster
гуру
31.03.17
✎
21:58
|
на самом деле непонятно, почему 1с не сделала оберток для мультипарта, хотя бы в составе БСП
|
|||
12
oleg_km
31.03.17
✎
23:18
|
(11) Когда вышла 1С 8.0 и когда первая БСП? Вот тогда и добавят объект для работы с HTTP. А на дотнете уже есть.
|
|||
13
Сергиус
01.04.17
✎
00:27
|
(0)А если попробовать с помощью WinHttp.WinHttpRequest.5.1 получить?
|
|||
14
oleg_km
01.04.17
✎
08:20
|
А там разве есть парсер мультипартов?
|
|||
15
Serginio1
01.04.17
✎
09:27
|
(10) Отправка файла методом POST в объекте WinHttpRequest из 1C
.Net в 1С. Парсинг сайтов, multipart/form-data, gzip итд http://ru.stackoverflow.com/questions/527763/%d0%9a%d0%b0%d0%ba-%d0%b2%d1%8b%d0%b7%d0%b2%d0%b0%d1%82%d1%8c-%d0%bc%d0%b5%d1%82%d0%be%d0%b4-%d0%b8%d0%b7-c-%d0%b2-1%d0%a1/527802#527802 |
|||
16
Serginio1
01.04.17
✎
09:56
|
Если нужен парсер то здесь
https://github.com/Vodurden/Http-Multipart-Data-Parser (14) Привет! Решил проблему парсера? |
|||
17
oleg_km
01.04.17
✎
10:11
|
(16) Да, там строчку надо подправить. Я им на гит написал где и что нужно исправить
|
|||
18
Serginio1
01.04.17
✎
11:36
|
Да открытый код это хорошо
|
|||
19
Fragster
гуру
01.04.17
✎
12:01
|
смысл подключать додиез ради того, чтобы в него скопипастить также отсутствующий встроенный парсер мультипарт? можно и на 1се это же сделать, и на инфостарте есть готовое...
|
|||
20
Serginio1
01.04.17
✎
12:05
|
(19) Смысл использовать еще кучу возможностей. Поверь.
Это расширение возможностей 1С. Без кучи костылей. |
|||
21
Serginio1
01.04.17
✎
12:07
|
Опять же это не додиез. Это .Net.
Мы используем готовые сборки, а они на CIL. При этом подключается среда исполнения CLR. Никакого до диеза нет. |
|||
22
Fragster
гуру
01.04.17
✎
12:19
|
(20) хз, "без кучи костылей" я подключаю по http, без использования подключаемых библиотек. чтобы не иметь себе голову с безопасными режимами, кроссплатформенностью, мультибитностью и прочим.
|
|||
23
Serginio1
01.04.17
✎
12:52
|
(22) А ты на линуксе? Я могу сделать и для него.
Суть то в том, что нужно разбираться с форматами и прочими вещами. А так взял готовое решение и глолова не болит, что и как в текст подставить. |
|||
24
Неверный Параметр И
01.04.17
✎
16:55
|
(20) Судя по всему при поиске новой работы ты хочешь быть не программистом, а продажником. У человека конкретный вопрос, а ты ему про возможности борождения просторов космоса...
|
|||
25
Serginio1
01.04.17
✎
19:10
|
(24) Я и дал конкретный ответ в (15) и (16).
А 20 это про (19). Читай пожалуйста внимательнее. И не бросайся словами. |
|||
26
oleg_km
01.04.17
✎
20:24
|
(19) Мне не надо ничего копипастить - просто подключил сборку и пользуюсь. Как в дельфях, как остальном мире программирования. Собственно как обработку в 1С. Почему нужно (ждать у моря погоды) ждать когда 1С разродилась на А - запилила HHTP-сервисы, а потом еще лет 5 ждать когда же она скажет Б - сделает нормальные объекты по обработке запросов и ответов?
|
|||
27
Dunemaster
02.04.17
✎
00:03
|
||||
28
oleg_km
02.04.17
✎
10:01
|
(27) Пилите, Шура, пилите.
|
|||
29
Serginio1
02.04.17
✎
11:15
|
(26) Угу и так в час по чайной ложке.
Через годик еще добавят проверку сертификата в Эксель http://ru.stackoverflow.com/questions/532477/%d0%9f%d1%80%d0%be%d0%b2%d0%b5%d1%80%d0%ba%d0%b0-%d0%bf%d0%be%d0%b4%d0%bf%d0%b8%d1%81%d0%b8-%d0%ad%d0%a6%d0%9f-%d0%b2-%d1%84%d0%b0%d0%b9%d0%bb%d0%b5-online-%d0%bf%d1%80%d0%be%d0%b2%d0%b5%d1%80%d0%ba%d0%b0-%d1%81%d0%b5%d1%80%d1%82%d0%b8%d1%84%d0%b8%d0%ba%d0%b0%d1%82%d0%b0-%d0%b8%d1%81%d0%bf%d0%be%d0%bb%d1%8c%d0%b7%d1%83%d1%8f-c-%d1%87%d0%b5%d1%80%d0%b5%d0%b7-%d0%b1%d0%b8%d0%b1 |
|||
30
lock19
02.04.17
✎
12:13
|
(21) Ну ты успокоил.
|
|||
31
Неверный Параметр И
02.04.17
✎
19:06
|
(25) Вот, @Sergino1, учись продаванской наглости: Как предложить фирме 1С свою технологию?
А то так и будешь до пенсии своим Ъ потрясать. |
|||
32
Serginio1
02.04.17
✎
20:02
|
(31) Я понял, что это бесполезно. Поэтому и хочу уйти в .Net,
раз это не нужно ни 1С ни бОльшему количеству программистов 1С. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |