有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

沙盒上使用的java Paypal Express签出,安全标头无效,API凭据中没有错误

在我的GWT-RPC项目中,我想在沙箱上使用Paypal Express签出。我在eclipse上以GWT超级开发模式运行我的项目来测试它

我使用paypal integration wizard在服务器端添加了paypalfunctions.java类,该类允许调用PayPal API。在我的服务器端,我有一个异步调用,日志部分用于调试:

    /**

     * PayPal Operations
     */
    @SuppressWarnings("rawtypes")
    public HashMap setCheckoutExpress(DatiPaypalCheckoutExpress paypal){
        paypalfunctions api=new paypalfunctions();
        HashMap response=api.CallMarkExpressCheckout(((Double) paypal.getTOT()).toString(), 
                "http://127.0.0.1:8888/MovieUniverse.html#order_confirmed",
                "http://127.0.0.1:8888/MovieUniverse.html#order_cancelled",
                "", "", "", "", "",
                "", "", "");
//      response=api.CallShortcutExpressCheckout("10.00",
//              "http://127.0.0.1:8888/MovieUniverse.html#order_confirmed",
//              "http://127.0.0.1:8888/MovieUniverse.html#order_cancelled");
        if(response!=null){
            GWT.log("Server: setCheckoutExpress() HashMap: "+response.toString());
        }else
            GWT.log("Server: setCheckoutExpress() HashMap: null");


        return response;
    }

注释部分CallShortcutExpressCheckout可以正常工作。但当我使用CallMarkExpressCheckout时,我会收到响应

{L_LONGMESSAGE0=Security header is not valid, VERSION=93, BUILD=17329237, L_ERRORCODE0=10002, ACK=Failure, CORRELATIONID=9ce80c51dc8a5, TIMESTAMP=2015-07-09T16:25:14Z, L_SEVERITYCODE0=Error, L_SHORTMESSAGE0=Security error}

API凭证中没有空格,示例方法可以正常工作,因此paypal端点编写正确。 我不知道怎么解决它。非常感谢


共 (3) 个答案

  1. # 1 楼答案

    有时人们会将API用户名和API密码与同一paypal帐户的常规paypal用户名和密码混淆,这也会导致错误10002

    例如,您可能提供了API用户名,但在SetExpressCheckout API调用中错误地提供了常规密码

    在沙盒模式下,点击“paypal买家@********”账户记录下的“配置文件”链接后,“API凭证”选项卡下会给出API密码

  2. # 2 楼答案

    除非凭证以某种方式出错,否则不会发生该错误。可能是这些值本身,也可能是您正在向live server发送沙盒凭据,或者反之亦然

    如果您完全确定这些值本身是正确的,请确保在正确的端点上使用了正确的值

  3. # 3 楼答案

    最后,我没有以那种方式下决心。我用了paypal sdk merchant 为了理解如何使用它,我使用了伟大的API Explorer Paypal,这对于理解sdk的哪些对象以及如何设置对象非常有用。在how's to上,我看到了需要设置的sdk对象。我建议这样使用API Paypal