繁体   English   中英

PayPal自适应支付预认证密钥的php curl

[英]Php curl for PayPal adaptive payments preaproval key

PHP的新增功能,试图将PayPal的自适应支付选项添加到我正在构建的站点中。

我需要将在PayPal找到的以下代码格式化为php curl:

curl -s --insecure
-H "X-PAYPAL-SECURITY-USERID: api_username"
-H "X-PAYPAL-SECURITY-PASSWORD: api_password"
-H "X-PAYPAL-SECURITY-SIGNATURE: api_signature"
-H "X-PAYPAL-REQUEST-DATA-FORMAT: NV"
-H "X-PAYPAL-RESPONSE-DATA-FORMAT: NV"
-H "X-PAYPAL-APPLICATION-ID: app_id"
https://svcs.sandbox.paypal.com/AdaptivePayments/Preapproval  -d
"cancelUrl=http://your_cancel_url
&currencyCode=USD
&endingDate=2009-12-13T08%3A00%3A00.000Z
&maxAmountPerPayment=200.00
&maxNumberOfPayments=30
&maxTotalAmountOfAllPayments=1500.00
&pinType=NOT_REQUIRED
&requestEnvelope.errorLanguage=en_US
&returnUrl=http://your_return_url
&startingDate=2009-07-13T07%3A00%3A00.000Z
&senderEmail=sender@domain

提出以下建议:

    $ch = curl_init();

    paypal_url = 'https://svcs.sandbox.paypal.com/AdaptivePayments/Preapproval';
    paypal_header_options = array();
    paypal_header_options[] = "X-PAYPAL-SECURITY-USERID: api_username";
    paypal_header_options[] = "X-PAYPAL-SECURITY-PASSWORD: api_password";
    paypal_header_options[] = "X-PAYPAL-SECURITY-SIGNATURE: api_signature";
    paypal_header_options[] = "X-PAYPAL-REQUEST-DATA-FORMAT: NV";
    paypal_header_options[] = "X-PAYPAL-RESPONSE-DATA-FORMAT: NV";
    paypal_header_options[] = "X-PAYPAL-APPLICATION-ID: app_id";


    curl_setopt($ch, CURLOPT_URL, paypal_url);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_HTTPHEADER, paypal_header_options);
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);

    paypal_response = curl_exec($ch);

    curl_close($ch);

所以我的问题是,这去了哪里:

    "cancelUrl=http://your_cancel_url
    &currencyCode=USD
    &endingDate=2009-12-13T08%3A00%3A00.000Z
    &maxAmountPerPayment=200.00
    &maxNumberOfPayments=30
    &maxTotalAmountOfAllPayments=1500.00
    &pinType=NOT_REQUIRED
    &requestEnvelope.errorLanguage=en_US
    &returnUrl=http://your_return_url
    &startingDate=2009-07-13T07%3A00%3A00.000Z
    &senderEmail=sender@domain

-d是什么? 我已经搜索过,但是找不到并回答。

您需要按如下所示将数据推送到post参数字段中:

$paypal_data_d = 'cancelUrl=...&senderEmail=sender@domain';
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $paypal_data_d); 

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM