HTTP Post:获取加密的Paypal多项目购物车上传按钮

时间:2017-02-17 16:09:21

标签: encryption paypal shopping-cart

我无法使用Button Manager API的BMCreateButton来上传多项目购物车。 在paypal documentation for the cart upload command内,关于“保护您的按钮”的段落意味着应该可以获得上面列出的所有功能的加密按钮,包括购物车上传表单。在this SO thread中,有人说他们已经用PHP解决了这个问题,但是看了之后,他们使用简单的HTTP Post并不明显,因为它与PHP类的内部工作有关。

到目前为止,我只能查看一个项目,并且在尝试使用多项目语法(item_name_1item_name_2 ...)时,它根本没有显示任何项目总共0.00

这是我的请求代码:

string requestContent =
  "METHOD=BMCreateButton" +
  "&VERSION=85.0" +
  "&USER=<user>" +
  "&PWD=<pwd>" +
  "&SIGNATURE=<sig>" +
  "&BUTTONCODE=ENCRYPTED" +
  "&BUTTONTYPE=BUYNOW" +
  "&BUTTONIMAGE=reg" +
  "&BUTTONCOUNTRY=US" +
  "&BUTTONSUBTYPE=PRODUCTS" +

  //"&L_BUTTONVAR1=cmd%3D_cart" + //having this in here definitely causes an error message to display
  "&L_BUTTONVAR1=button_subtype%3DPRODUCTS" +
  "&L_BUTTONVAR2=business%3Dbiz%40biz.com" +
  "&L_BUTTONVAR3=item_name_1%3DToaster" +
  "&L_BUTTONVAR4=amount_1%3D45.00" +
  "&L_BUTTONVAR5=quantity_1%3D1" +
  "&L_BUTTONVAR6=upload%3D1";

它不起作用 - 我已经询问了PayPal技术支持,并且如果我在这个主题上听到他们的任何回复,我会在这里回复。

1 个答案:

答案 0 :(得分:1)

我遇到了同样的问题,因为没有进展,我联系了PayPal支持。 There is the answer

如果链接将死亡,则会引用回复:

  

它不仅仅是加密的。如果您尝试CLEARTEXT,则会抛出相同的错误。

     

上传购物车是一种略有不同的按钮,从未打算预先构建,这就是为什么BMCreateButton中不存在此功能的原因。如果您比较帐户中的Button Manager和AP​​I功能 - 它们具有相同的功能,在这两种情况下,上传购物车都没有。

     

查看文档,您还会注意到BUTTONTYPE = CART是指添加到购物车。

     

尝试保护上传购物车代码非常有意义,但最好的方法始终是事后一致性验证(使用IPN)。

所以总结一下,它是不可能加密的,我们只能检测篡改,例如IPN。

在回答我的问题时,PayPal主持人提交了一个问题,以便在文档中澄清这一点。