Lotus Domino Designer: AJAX или каким-либо другим способом открыть URL-адрес для извлечения данных

58
7

После Lotus Domino Designer: добавьте кнопку в календарь по умолчанию

Ссылка на самом деле является ссылкой SSO (единый вход), которая поставляется нашим API для подключения пользователя к нашему приложению.

Мы должны выполнить URL-адрес http://foo.com/api.asp?cas=GETUSERTOKEN&rdn=9428521&login=mike&logincnx=adminAPIHays&pwdcnx=app

который возвращает ограниченную по времени ссылку SSO http://foo.com/hays/array.asp?key=750EA68A476C9F8D26F9704B203205FDF64D2B849B688F169B398D217FFF570F54C1CB6B4635A494E504E624EDF3266D0D5C2A1210AA43EE3CD2098AE8B42DBF которая соединяет пользователя.

Каким образом я могу запрограммировать это в Domino Designer?

При необходимости мы можем поместить кнопку в новое что-то (не обязательно в календарь по умолчанию).

спросил(а) 2011-11-03T12:55:00+04:00 8 лет, 11 месяцев назад
1
Решение
71

Я сделал это в LotusScript:

Sub Click(Source As Button)
Dim objHttp As Variant
Dim url As String
Dim response As String

Set objHttp = CreateObject("Microsoft.XMLHTTP")

url = "http://foo.com/api.asp?cas=GETUSERTOKEN&rdn=9428521&login=mike&logincnx=adminAPIHays&pwdcnx=app"

objHttp.open "GET", url, False
objHttp.setRequestHeader "Content-type", "application/x-www-form-urlencoded"

objHttp.send

newUrl = objHttp.responseText

Set w = New NotesUIWorkspace
w.UrlOpen newUrl
End Sub

ответил(а) 2011-11-04T16:31:00+04:00 8 лет, 11 месяцев назад
71

Поскольку вы хотите получить другой URL-адрес из первоначального URL-запроса, вам нужно будет использовать Java-агент для открытия URL-соединения и обработать ответ для определения. Лучшим подходом является использование класса J2SE URLConnection. Когда вы находитесь в Java-агенте, вы можете записывать ответы и хранить их в документах.

Если вам нужно что-то сделать в пользовательском интерфейсе после получения ответа, вам нужно вызвать агента Java из функции LotusScript либо из действия вида, либо из формы. Но если это не требуется, вы также можете вызвать Java-агент непосредственно в действии и кнопках формы. Java-агенты не имеют выходных данных интерфейса, кроме консоли Java Debug. В кругах Domino Боб Балабан является гуру и недавно начал пересматривать свою Java в книгах Domino. Он дает хорошее представление о том, как он "висит вместе" с Domino API.


Существует множество примеров, разбросанных по всему Интернету, о том, как использовать Java в Domino. IBM опубликовала информацию о Java-агентах в Domino. Несколько хороших примеров можно найти здесь, здесь и здесь. Последняя версия Domino Designer работает под Eclipse, поэтому это может помочь.

ответил(а) 2011-11-04T16:14:00+04:00 8 лет, 11 месяцев назад
Ваш ответ
Введите минимум 50 символов
Чтобы , пожалуйста,
Выберите тему жалобы:

Другая проблема