【发布时间】:2013-11-27 11:56:55
【问题描述】:
据我了解,使用 PayPal api,您可以通过填充将提交给 PayPal 的隐藏 HTML 输入字段来传递您的付款金额。
到目前为止,我得到的看起来有点像这样:
<input type="hidden" name="amount" value="60.00">
我的问题是 - 这不是超级不安全吗?例如,有什么可以阻止某人更改元素检查器中的付款值?
【问题讨论】:
据我了解,使用 PayPal api,您可以通过填充将提交给 PayPal 的隐藏 HTML 输入字段来传递您的付款金额。
到目前为止,我得到的看起来有点像这样:
<input type="hidden" name="amount" value="60.00">
我的问题是 - 这不是超级不安全吗?例如,有什么可以阻止某人更改元素检查器中的付款值?
【问题讨论】:
您可能希望使用 PayPal ButtonManager API 操作以编程方式创建、管理、编辑和删除 PayPal 付款标准按钮,这些按钮与您可以从 PayPal 配置文件中创建的按钮类型相同。
此 API 创建的托管按钮驻留在 PayPal 上,可以使用所有功能,包括库存管理;但是,您也可以使用此 API 为非托管标准按钮创建代码。
您将从该 API 请求创建的按钮如下所示:
https://www.sandbox.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=19218
正如您所见,“业务”、“金额”或其他值不可见,因此这是一个安全的解决方案,我个人推荐它。
回到你的问题“有什么可以阻止某人在元素检查器中更改付款值?”
我们建议使用 API 请求(参见 ExpressCheckout 或 ButtonManager 创建标准按钮)和 Instant Payment Notifications 服务 (IPN),这是一条消息通知您与 PayPal 交易相关的事件的服务。您可以使用 IPN 消息来自动化后台和管理功能,例如履行订单、跟踪客户以及提供状态和其他交易相关信息。
【讨论】: