Я пытаюсь отправить данные на платежный шлюз WorldPay. Я сейчас делаю это (успешно) путем создания строки запроса (платежное ID, количество, данные клиента и т.д.) и конкатенации их к базовому URL WorldPay, как и так:Перенаправление с данными сообщения - БЕЗ строки запроса
https://secure-test.worldpay.com/wcc/purchase?instId=12345&testMode=100&amount=999
... и выполняя стандартный ответ Response.Redirect ([above_url]).
Это работает так, как предполагалось, но я обеспокоен тем, что обнародование этой информации в строке запроса может побудить людей атаковать ее (например, изменение «суммы» ключа, скажем, «1»!).
В примерах WorldPay вы найдете только базовую форму HTML, но поскольку данные POSTed с использованием этого метода, вышеупомянутая проблема никогда не является проблемой. К сожалению, мне необходимо выполнить предварительную обработку (обновления статуса заказа и т. Д.) ПЕРЕД тем, чтобы перенаправить пользователя на WorldPay, чтобы завершить платеж, поэтому мне остается задаться вопросом, можно ли это сделать программно?
Я подозреваю, что я пытаюсь сделать то же самое, что и вопрос this: программно перенаправить пользователя на сайт WorldPay, передав все необходимые данные о платеже, не подвергая строкам строки запроса.
Возможно ли это?
Динамическую форму можно создать с помощью метода = 'post' и всех параметров в виде скрытых полей. И отправьте эту форму –
@NickH Основываясь на том, что я понимаю, это зависит от того, что может понять эта внешняя услуга (WorldPay в вашем случае). Если у него есть возможность читать значения формы, то вы можете определенно подготовить данные POST и перенаправить. –