У меня есть приложение Clarion 9, которое я хочу использовать для связи с HTTP-серверами. Я родом из PHP. У меня 0 идей, что делать.
Что я хочу уметь:
Анализ данных JSON и преобразование данных QUEUE в JSON [Готово]
Имейте глобальную переменную, такую как «baseURL», которая указывает, например, на.
http://localhost.com
[Готово]Функции вызова таких
apiConnection.get('/users')
вернули бы мне содержимое страницы. [Я застрял здесь]apiConnection.post('/users', myQueueData)
будет размещать содержимое myQueueData.
Я попытался использовать winhttp.dll, прочитав его из LibMaker, но он не прочитал его. Вместо этого я теперь использую wininet.dll, для которого LibMaker успешно создал файл .lib.
В настоящее время я использую процедуры PROTOTYPE из этого кода на GitHub https://gist.github.com/ddur/34033ed1392cdce1253c
Что я сделал, так это включил их, например:
SimpleApi.clw
PROGRAM
INCLUDE('winInet.equ')
ApiLog QUEUE, PRE(log)
LogTitle STRING(10)
LogMessage STRING(50)
END
MAP
INCLUDE('winInetMap.clw')
END
INCLUDE('equates.clw'),ONCE
INCLUDE('DreamyConnection.inc'),ONCE
ApiConnection DreamyConnection
CODE
IF DreamyConnection.initiateConnection('http://localhost')
ELSE
log:LogTitle = 'Info'
log:LogMessage = 'Failed'
ADD(apiLog)
END
Но буфер, который использует winInet, всегда возвращает 0.
Я создал репозиторий GitHub https://github.com/spacemudd/clarion-api с весь код для просмотра.
Я действительно потерялся в этом, потому что я не могу найти надлежащую документацию Clarion.
Мне не нужно платное решение.