Кто-нибудь уже работал с Filemaker DATA API?
Есть затруднения некоторые, не могу разобраться. Нужен опытный специалист
Короче, ситуация такая
через API я создаю в табличке новую запись. В ней есть поле end_flag
задача удаленного приложения - дождаться, пока серверный скрипт завершит работу и запишет в это поле в эту запись единичку.
Удаленное приложение в цикле через каждые 5 секунд средствами API опрашивает данную табличку и данную запись, читает результат
Так вот возникает такая фигня. Если за время сессии значение в поле поменял кто-то чужой (не само удаленное приложение), то
1) это не сразу видно, долгое время возвращается результат "пусто", хотя на самом деле уже единичка проставлена в запись
2) спустя какое-то время все поля этой записи возвращаются с результатом NO ACCESS
то есть логика такая: если за время сессии запись, к которой обращается удаленное приложение, была КЕМ-ТО модифицирована, то обращаться к этой записи уже невозможно.
Но если сделать выход (Logout), а затем начать новую сессию (Login), то запись эта снова успешно читается.
Вопросы:
1) что это за логика такая странная и для чего так сделано?
2) почему такой долгий таймаут между фактическим изменением записи и временем, когда API начинает понимать, что запись изменена?
3) можно ли как-то обойтись без постоянного Logout-Login в цикле, чтобы отслеживать изменения в БД, которые сделали ДРУГИЕ пользователи?
4) если без этого обойтись нельзя, то есть ли что-то страшное в том, что так часто выполняется вход-выход, может ли это повлечь какие-то неприятные последствия? Или плевать, лишь бы работало?
5) есть ли какие-то другие способы опрашивать БД через API?
ЗЫ. пробовал как чтение записи через API, так и запуск скрипта и чтение его результата. Одинаково.
ЗЫЫ. Привилегия админская выставлена сейчас, ограничений нет никаких.
ЗЫЫЫ. Пробовал ставить флаг в другую таблицу, а результат вычислять по реляции. То же самое все
DATA API
-
- Сообщения: 338
- Зарегистрирован: 11 сен 2017, 13:42
- Откуда: Санкт-Петербург
Re: DATA API
Собрался использовать DATA API для обслуживания терминала очереди. Сейчас застрял на авторизации, не могу получить токен. Через Postman авторизуюсь на ура а из FM не удается никак.
Хотелось собрать клиента ктороый не будет находиться в постоянном коннекте с сервером а подключаться по необходимости.
Копирую опции из Postman но получаю Bad request
Странно
Хотелось собрать клиента ктороый не будет находиться в постоянном коннекте с сервером а подключаться по необходимости.
Копирую опции из Postman но получаю Bad request
Странно
Код: Выделить всё
"-X POST ¶
-u " & $user & ":" & $password & " ¶
--header \"Content-Type: application/json; charset=utf-8 \" ¶
--header \"Connection: keep-alive \"
--header \"Accept-Encoding: deflate, gzip, br \"
--header \"Accept: */* \" ¶
--header \"Parameters: {} \" ¶
--trace-ascii $$Trace¶
--dump-header $$Dump"
Re: DATA API
Код: Выделить всё
"-X POST ¶"
-u " & $user & ":" & $password & " ¶
-H \"Content-Type: application/json\"¶
-d \"{}\""
-
- Сообщения: 1
- Зарегистрирован: 15 дек 2020, 23:58
Re: DATA API
Добрый день. Уже неделю мучаюсь и не могу понять, что я делаю не так...
Есть АТС из которой мне нужно получить статистику звонков (api json).
В мануале АТС есть информация о том как делать ссылку что бы получить тот или иной вариант получения информации. Получается ссылка вида - https://192.168.1.3:8443/cdrapi?format=JSON&caller=777 В браузере ссылка открывается после введения логина и пароля.
Я использую шаг скрипта - Insert From URL. В доп параметре cURL прописываю:
"-X POST --digest -H \"Content-Type: application/json\" -u cdrapi:cdrapi123 -d \"{}\"" Выдаёт ошибку - 400
Я пробовал всевозможные варианты и всё время одно и тоже - ошибка 400. Прошу помощи..
Есть АТС из которой мне нужно получить статистику звонков (api json).
В мануале АТС есть информация о том как делать ссылку что бы получить тот или иной вариант получения информации. Получается ссылка вида - https://192.168.1.3:8443/cdrapi?format=JSON&caller=777 В браузере ссылка открывается после введения логина и пароля.
Я использую шаг скрипта - Insert From URL. В доп параметре cURL прописываю:
"-X POST --digest -H \"Content-Type: application/json\" -u cdrapi:cdrapi123 -d \"{}\"" Выдаёт ошибку - 400
Я пробовал всевозможные варианты и всё время одно и тоже - ошибка 400. Прошу помощи..
Re: DATA API
В этой теме три разных вопроса. Давайте разделять же. Не понятно же кому что отвечать ))
-
- Сообщения: 338
- Зарегистрирован: 11 сен 2017, 13:42
- Откуда: Санкт-Петербург
Re: DATA API
Danya Korolev писал(а): ↑05 сен 2021, 15:40Добрый день. Уже неделю мучаюсь и не могу понять, что я делаю не так...
Есть АТС из которой мне нужно получить статистику звонков (api json).
В мануале АТС есть информация о том как делать ссылку что бы получить тот или иной вариант получения информации. Получается ссылка вида - https://192.168.1.3:8443/cdrapi?format=JSON&caller=777 В браузере ссылка открывается после введения логина и пароля.
Я использую шаг скрипта - Insert From URL. В доп параметре cURL прописываю:
"-X POST --digest -H \"Content-Type: application/json\" -u cdrapi:cdrapi123 -d \"{}\"" Выдаёт ошибку - 400
Я пробовал всевозможные варианты и всё время одно и тоже - ошибка 400. Прошу помощи..
вариант прописать юзера и пароль в самой ссылке не пробовали?
Код: Выделить всё
https://cdrapi:cdrapi123@192.168.1.3:8443/cdrapi?format=JSON&caller=777
Код: Выделить всё
--header "Authorization: Basic cdrapi:cdrapi123"
-
- Сообщения: 338
- Зарегистрирован: 11 сен 2017, 13:42
- Откуда: Санкт-Петербург
Re: DATA API
Лично я решил все вопросы через плагин DataBox
флаг записываю плагином в глобальную переменную и таким образом настраиваю общение между серверными скриптами и внешними запросами к серверу через Data aPI