2014-10-21 5 views
1

Я реализовал Sagepay (используя C#/ASP.NET) в соответствии с руководством по интеграции. Он работает не так, как ожидалось, хотя все платежи проходят через мой скрипт уведомления, не работает.Почему уведомление Sagepay использует GET not POST?

Руководство говорит:

The Sage Pay серверы отправить HTTP или HTTPS POST к сценарию NotificationURL на сервере, чтобы сообщить о результатах сделки через порты 80 и 443. Пожалуйста, убедитесь, что вы используете только эти порты как жесткое кодирование, любые другие порты будут генерировать ошибки. Результаты авторизации транзакции всегда отправляются на ваш NotificationURL.

Это не то, что я вижу, хотя, гиперссылка уведомление осуществляется доступ к GET не POST, и поэтому я не в состоянии получить доступ к любой транзакции, используя детали:

IServerNotificationRequest serverNotificationRequest = new SagePayServerIntegration().GetServerNotificationRequest(); 
serverNotificationRequest.VendorTxCode // <- this is an empty string 

Любая помощь приветствуется. Кто-нибудь видел это поведение, когда он использует GET not POST?

Благодаря

+1

Как общий комментарий от кого-то, кто устал от общения с поставщиками платежей, я рекомендую вам (а) никогда не предполагать, что они будут вести себя логически, (б) никогда не предполагают, что они не будут меняться изо дня в день без обновляя свою документацию, (c) никогда не предполагайте, что они действительно следуют своей собственной документации. Полоса кажется наименее ужасной в этом отношении. – abligh

+0

Это тоже со мной, я просто получаю GET без запросов. – dsas

ответ

0

Это происходит со мной, потому что они связывались с сервера на example.com/callback, как я сказал им, и наш апач конфигурации был перенаправлять их www.example.com/callback, которые они затем доступ к GET.

Смежные вопросы