Я работаю над проектом, который использует IP-платежи для обработки транзакций. Проект включает в себя веб-форму, написанную в ASP с кодом-Behind, написанную на C#.ASP.NET вызов функции Javascript
IPP предлагает реализацию iFrame, где вы можете разместить iFrame на своей странице и отобразить небольшую страницу IPP с полями для ввода информации о кредитной карте. Идея заключается в том, что информация о кредитной карте будет обрабатываться только IPP и никогда не будет выполняться сервером, на котором запущена страница, поэтому нет необходимости гарантировать, что данные карты сохранены.
Для отображения страницы IPP в iFrame, сеанс должен быть инициирован IPP. Сервер инициирует сеанс и передает переменную SessionID. После успешного запуска сеанса на сервер возвращается защищенный токен сеанса. Затем серверу необходимо «заставить» браузер клиента GET или POST SessionID и SST (Secure Session Token) на веб-сайт IPP. Вот где моя проблема.
Я написал функцию Javascript на странице ASPX, которая примет два параметра - SessionID и SST - и отправит их на веб-сайт IPP. Теперь я пытаюсь вызвать эту функцию Javascript из моего кода на C# при успешном инициировании сеанса IPP. Однако я не мог этого сделать.
Я много раз искал, и один ответ, который я продолжаю встречать, - использовать либо RegisterStartupScript, либо RegisterClientScriptBlock. Проблема в том, что они, кажется, вставляют текст непосредственно на страницу, а не вызывают существующую функцию. Предполагая, что я вставил свою функцию на страницу через одну из этих функций, а не записывал ее непосредственно на страницу, она по-прежнему не решает мою проблему вызова этой функции.
Теперь возможно, что я собираюсь сделать это неправильно, и есть намного лучший способ заставить браузер клиента GET/POST SessionID и SST; если да, скажите, пожалуйста. Я неопытен с веб-программированием и, таким образом, изучаю, когда иду и составляю решения по пути, который, скорее всего, не идеален.
Заранее спасибо.
Как «Защищенный токен сеанса» возвращается на сервер? – adaam
Один из вариантов - сделать общедоступные переменные и встроить их непосредственно в JavaScript. Я никогда не видел причины для «RegisterClientScriptBlock» ... кажется более запутанным, чем другие способы выполнить одно и то же ... рендеринг правильного HTML для клиента. – MikeSmithDev
Он возвращается как часть некоторого HTML. Я извлекаю SST и помещаю его в строку. –