|
1С + Firebase (Firestore) | ☑ | ||
---|---|---|---|---|
0
Сниф
23.03.18
✎
20:00
|
Привет. Видел примеры обращения к Firebase из 1С обычными get и post запросами. Но Firebase это же real-time database. Нету способа использовать эту возможность из 1С?
|
|||
1
Fram
23.03.18
✎
20:07
|
firebase работает через http?.. я просто не в курсе. мне любопытно
real-time database это какой то технический протокол предоставляющий интерфейс для доступа из других систем? |
|||
2
Сниф
23.03.18
✎
20:18
|
(1) Да, firebase работает через http. И из 1С.
[code] &НаКлиенте Процедура Загрузить(Команда) ЗагрузитьНаСервере(); КонецПроцедуры &НаКлиенте Процедура Выгрузить(Команда) ВыгрузитьНаСервере(); КонецПроцедуры &НаСервере Процедура ЗагрузитьНаСервере() Метод = "GET"; // Все запросы на чтение данных выполняются методом GET Ресурс = "items.json"; // Адрес ресурса - соответствут имени узла в firebase АдресПриложения = "https://ninth-airship-149206.firebase.com/"; // Адрес вашего приложения firebase //АдресПриложения = "https://myapp-a377c.firebaseio.com/"; // Адрес вашего приложения firebase Авторизация = "?auth=***"; // Авторизационный токен вашего firebase приложения. Его можно найти по пути: Project Settings - Project Settings - Service Accounts - Database Secrets - Show) Запрос = АдресПриложения + Ресурс + Авторизация; WinHttp = Новый COMОбъект("WinHttp.WinHttpRequest.5.1"); WinHttp.Option(2,"utf-8"); //WinHttp.SetProxy(2,"СЕРВЕР:ПОРТ"); //если вы работаете через прокси WinHttp.Open(Метод, Запрос, 0); WinHttp.SetRequestHeader("Accept-Language", "en"); WinHttp.SetRequestHeader("Accept-Charset","utf-8"); WinHttp.setRequestHeader("Content-Language", "en"); WinHttp.setRequestHeader("Content-Charset", "utf-8"); WinHttp.setRequestHeader("Content-Type","application/json; charset=utf-8"); WinHttp.Send(); Рез = WinHttp.ResponseText(); Сообщить(Рез); WinHttp = ""; WinHttp = Неопределено; КонецПроцедуры &НаСервере Процедура ВыгрузитьНаСервере() Метод = "PATCH"; // Все запросы на отправку данных выполняются методом PATCH Ресурс = "goods-groups.json"; // Адрес ресурса - соответствут имени узла в firebase АдресПриложения = "https://myapp-a377c.firebase.com/"; // Адрес вашего приложения firebase Авторизация = "?auth=****"; // Авторизационный токен вашего firebase приложения. Его можно найти по пути: Project Settings - Project Settings - Service Accounts - Database Secrets - Show) Запрос = АдресПриложения + Ресурс + Авторизация; WinHttp = Новый COMОбъект("WinHttp.WinHttpRequest.5.1"); WinHttp.Option(2,"utf-8"); //WinHttp.SetProxy(2,"СЕРВЕР:ПОРТ"); //если вы работаете через прокси WinHttp.Open(Метод, Запрос, 0); WinHttp.SetRequestHeader("Accept-Language", "en"); WinHttp.SetRequestHeader("Accept-Charset","utf-8"); WinHttp.setRequestHeader("Content-Language", "en"); WinHttp.setRequestHeader("Content-Charset", "utf-8"); WinHttp.setRequestHeader("Content-Type","application/json; charset=utf-8"); Данные = Новый Соответствие(); Данные.Вставить("abcdef", "Телевизоры"); Запись = Новый ЗаписьJSON; Запись.УстановитьСтроку(); ЗаписатьJSON(Запись, Данные); ДанныеJson = Запись.Закрыть(); WinHttp.Send(ДанныеJson); Рез = WinHttp.ResponseText(); Сообщить(Рез); WinHttp = ""; WinHttp = Неопределено; КонецПроцедуры [/code] |
|||
3
Сниф
23.03.18
✎
20:19
|
(1)
A real-time database is a database system which uses real-time processing to handle workloads whose state is constantly changing.[ База данных в режиме реального времени представляет собой систему баз данных, которая использует обработку в реальном времени для обработки рабочих нагрузок, состояние которых постоянно меняется. ] |
|||
4
Fram
23.03.18
✎
20:28
|
(2) http сервер идет в комплекте и разворачивается с установкой firebird или, все таки, это какой то сторонний API?
|
|||
5
Сниф
23.03.18
✎
20:28
|
(1) термин real-time database я встретил у Гугл. Технически это некий бесплатный хостинг от Гугл. 500мегабайт под json базу данных, 5 гиг под файлы. И библиотеки под разные языки. Я использую javascript. Сегодня прочитал статью, что технически Firebase это синтез протоколов websocket и http, но со стороны клиента эти подробности скрыты и ты получаешь поток данных , если на него подписан.
|
|||
6
Fram
23.03.18
✎
20:29
|
(3) и как этот теоретический термин должен помочь 1С достучаться до firebird ?
|
|||
7
Сниф
23.03.18
✎
20:35
|
(6) в бесплатный пакет от Google входит:
- техническое доменное имя - бесплатный хостинг файлов (у меня js-скрипты и html) - сама база данных Firebase или Firestore Вот с самой базой данных чтобы обмениваться 1С файликами json пока только тупой опрос со стороны 1С через 5 секунд. |
|||
8
Fram
23.03.18
✎
20:42
|
извини, ТС, я попутал firebird и firebase. это совершенно разные вещи. но сервис безусловно интересный
|
|||
9
Asmody
24.03.18
✎
00:19
|
(0) Нет конечно. 1С же не умеет вебсокеты слушать. Так что обратку по старинке - дергать в обработке ожидания.
|
|||
10
Garykom
гуру
24.03.18
✎
02:31
|
(9) Не проще обертку поднять для вебсервисов 1С или ВК заюзать?
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |