Как получить ответ в реализации First Data Payment Gateway


Я пытаюсь внедрить First Data Payment Gateway на моем сайте asp.net.

Я сделал все, теперь я могу перенаправить на https://checkout.globalgatewaye4.firstdata.com/payment и оплата выполнена, но затем FirstData перенаправляет на мой сайт на странице Result.aspx.

На этой странице я могу узнать, что платеж выполнен успешно, произошла какая-либо ошибка и т. Д. Я знаю, что он отправляет код ответа методом POST, но когда он попадает на мою веб-страницу, он выдает ошибку типа

Ошибка сервера в приложении '/'

Проверка MAC представления состояния не удалась. Если это приложение размещено на веб-ферме или в кластере, убедитесь, что в конфигурации указаны одинаковые validationKey и алгоритм проверки. Автогенерация не может использоваться в кластере.

Описание: во время выполнения текущего веб-запроса произошло необработанное исключение. Пожалуйста, просмотрите трассировку стека для получения дополнительной информации об ошибке и о том, где она возникла в коде.

Сведения об исключении: System.Web.HttpException: не удалось проверить MAC состояния представления. Если это приложение размещено на веб-ферме или в кластере, убедитесь, что в конфигурации указаны одинаковые validationKey и алгоритм проверки. Автогенерация не может использоваться в кластере.



Любая помощь...

Заранее спасибо..

2 ответа

Я хочу поделиться тем, что я сделал, но другие предложения будут оценены..:

У меня такая ошибка, и я даже не могу Page_Load Событие.
Итак, я просто создал одну новую страницу и перенаправил на эту страницу в Page_Init Событие.
У меня не было никогда Page_Init Событие таким образом раньше. Я даже не знаю, логично это или нет. Но это может быть временным решением.

я могу получить Parameters отправлено в POST метод в Page_Init Событие (я не знаю, почему там не выдается никакой ошибки), я просто включил их все в сеанс и перенаправил страницу.

Это было решено в настоящее время.

Мои друзья и я называем это ошибкой ViewState смерти. В основном эта ошибка может быть вызвана огромным разнообразием вещей.

На тот случай, если вам действительно нужно позаботиться о настройках ключа машины. Я бы сначала просмотрел следующий список:

1) проверьте файл web.config и убедитесь, что для вашего ключа машины не задано значение AutoGenerate.

2) Если вы не используете автогенерацию, перейдите в IIS и сгенерируйте ключ, а затем вставьте его в файл web.config, чтобы проверить, устранит ли это проблему временно. (это не очень хорошее долгосрочное решение, но оно может помочь вам продолжать прогрессировать, одновременно работая над долгосрочным решением).

3) Наконец, в любом случае, пройдите через элементы управления, которые вы используете, и посмотрите, используют ли они состояние просмотра. Если они это сделают, попробуйте отключить его для всех ваших элементов управления. ЕСЛИ это исправляет, то возникает какая-то ошибка, когда ваше приложение пытается десериализовать данные состояния просмотра. Я обнаружил, что это проблема при попытке загрузить страницу с отдельного веб-сайта, что похоже на то, что вы делаете.

Если вы обнаружите, что отключение view state решает вашу проблему, я не уверен в хорошем обходном пути, если вам нужно продолжать использовать view state.

Другие вопросы по тегам