powered by simpleCommunicator - 2.0.37     © 2025 Programmizd 02
Форумы / Caché, Ensemble, DeepSee, MiniM, IRIS, GT.M [игнор отключен] [закрыт для гостей] / Получить JSON из URL
11 сообщений из 11, страница 1 из 1
Получить JSON из URL
    #39413495
Sabyrov.Talgat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
по некому URL можем получить JSON,
Код: javascript
1.
2.
3.
4.
5.
6.
7.
8.
{
	"data":[ {
			"Id":14
		}, {
			"Id":74
		}
	]
}



мне нужно использовать эти данные через COS(Cache Object Script).

в C# это делается так :
Код: c#
1.
2.
3.
4.
using (WebClient wc = new WebClient())
{
   var json = wc.DownloadString("url");
}



Затем нужно сделать парсинг в %ZEN.ProxyObject
Прошу помочь!
...
Рейтинг: 0 / 0
Получить JSON из URL
    #39413552
Фотография kolesov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Sabyrov.Talgat,

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
	s httprequest=##class(%Net.HttpRequest).%New()
	s httprequest.Server="www.kolesov.ru"
	s sc = httprequest.Get("/ships/?param=trampampam")
	s resp = ""
	f {
		q:httprequest.HttpResponse.Data.AtEnd
		s resp = resp_httprequest.HttpResponse.Data.Read()
	}
	d ##class(%ZEN.Auxiliary.jsonProvider).%ConvertJSONToObject(resp,"%ZEN.proxyObject",.obj)


Ну а с obj уже делаем, что хотим
...
Рейтинг: 0 / 0
Получить JSON из URL
    #39413576
Sabyrov.Talgat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
kolesov,

Благодарю, все работает!
...
Рейтинг: 0 / 0
Получить JSON из URL
    #39413598
Фотография kolesov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Sabyrov.Talgat,

Странно, но мой код кто-то поправил о_О - причем кто-то с довольно пуританскими взглядами на программирование ;)

А чем bigbrains-то не понравилось, инквизиторы?
...
Рейтинг: 0 / 0
Получить JSON из URL
    #39414521
Sabyrov.Talgat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здесь еще одна проблема появилась.
Дело в том что мои HTTP запросы ооооочень долгие, они выполняются где то 30-40 мин.
Но когда делают HTTP запрос с помощью каше, он выполняет быстро и не выдает ошибки.

Прошу помочь!
...
Рейтинг: 0 / 0
Получить JSON из URL
    #39414600
Блок А.Н.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вы не опечатались? 30-40 минут? Вы что-то неправильно делаете.
А Каше за какое время отваливается? Там есть таймаут
Код: sql
1.
s httprequest.Timeout=3600

, но так делать нехорошо.
Лучше запускать асинхронный процесс на сервере, откуда получаете данные, и проверять время от времени, выполнился ли запрос.
...
Рейтинг: 0 / 0
Получить JSON из URL
    #39414612
Sabyrov.Talgat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Происходит некое вычисление, он сделан на другом языке, и для его запуска пришлось сделать его в виде API сервиса.
А результат этот нужно получить в некую переменную в COS
...
Рейтинг: 0 / 0
Получить JSON из URL
    #39414726
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Sabyrov.TalgatДело в том что мои HTTP запросы ооооочень долгие, они выполняются где то 30-40 мин.
Такого не должно быть в принципе...

Как уже писалось выше
Блок А.Н.Лучше запускать асинхронный процесс на сервере, откуда получаете данные, и проверять время от времени, выполнился ли запрос.
Sabyrov.Talgatон сделан на другом языке, и для его запуска пришлось сделать его в виде API сервиса.
А результат этот нужно получить в некую переменную в COS
Это абсолютно не важно.
Общение клиента с сервером должно быть коротким, если это не чтение данных или их передача.
...
Рейтинг: 0 / 0
Получить JSON из URL
    #39415159
Sabyrov.Talgat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Программа запускается в терминале.
В запускаемом методе есть такой код:

s httprequest=##class(%Net.HttpRequest).%New()
s sc = httprequest.Get(" http://localhost/api/values")

Но метод успешно доходит до конца, но только за короткое время и без значение Response (httprequest.HttpResponse.Data.Read() - пустой, хотя должно быть значение), а сервис http://localhost/api/values продолжает выполняется.

Нужно сделать какую нибудь задержку в терминале до выполнения сервиса http://localhost/api/values .
Прошу помочь!
...
Рейтинг: 0 / 0
Получить JSON из URL
    #39415459
Блок А.Н.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Sabyrov.Talgat,

ну вы хоть бы ответы читали ...
...
Рейтинг: 0 / 0
Получить JSON из URL
    #39415992
Sabyrov.Talgat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Блок А.Н.,
Спасибо! Разобрался)))
...
Рейтинг: 0 / 0
11 сообщений из 11, страница 1 из 1
Форумы / Caché, Ensemble, DeepSee, MiniM, IRIS, GT.M [игнор отключен] [закрыт для гостей] / Получить JSON из URL
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]