2013-07-22 8 views
6

पर स्विच किए जाने पर पेपैल रेस्ट एपीआई 401 त्रुटि देता है मैं एक छोटी वेबसाइट बना रहा हूं जिसमें मैंने क्रेडिट कार्ड चेकआउट को संसाधित करने के लिए पेपैल रीस्ट एपीआई लागू की है।लाइव पेडेंशियल्स

अब समस्या यह है कि यह ठीक सैंडबॉक्स साख का उपयोग कर काम कर रहा है ... लेकिन यह त्रुटि निम्न देता है जब मैं साख लाइव करने के लिए स्विच: मुझे नहीं पता कि क्या यह त्रुटि पैदा कर रहा है

Fatal error: Uncaught exception 'PayPal\Exception\PPConnectionException' with message 'Got Http response code 401 when accessing https://api.paypal.com/v1/payments/payment . Retried 0 times.' in C:\xampp\htdocs\rest_api_sdk_php\sample\vendor\paypal\sdk-core-php\lib\PayPal\Core\PPHttpConnection.php:99 Stack trace: #0 C:\xampp\htdocs\rest_api_sdk_php\sample\vendor\paypal\sdk-core-php\lib\PayPal\Transport\PPRestCall.php(44): PayPal\Core\PPHttpConnection->execute('{"intent":"sale...') #1 C:\xampp\htdocs\rest_api_sdk_php\sample\vendor\paypal\rest-api-sdk-php\lib\PayPal\Api\Payment.php(246): PayPal\Transport\PPRestCall->execute(Array, '/v1/payments/pa...', 'POST', '{"intent":"sale...') #2 C:\xampp\htdocs\rest_api_sdk_php\sample\payments\CreatePayment.php(89): PayPal\Api\Payment->create(Object(PayPal\Rest\ApiContext)) #3 {main} thrown in C:\xampp\htdocs\rest_api_sdk_php\sample\vendor\paypal\sdk-core-php\lib\PayPal\Core\PPHttpConnection.php on line 99

काफी स्पष्ट रूप से। पेपैल लाइव पर स्विच करते समय मैंने दो स्थानों में बदलाव किए। अर्थात

"bootstrap.php" में 1:

$apiContext = new ApiContext(new OAuthTokenCredential(
    '<Live Client ID>', 
    '<Live Secret>')); 

दी लाइव ग्राहक-चिह्न और गुप्त।

;Service Configuration 
[Service] 
mode=live ; can be set to sandbox/live 

परिवर्तित "मोड" "सैंडबॉक्स" से "लाइव" को

वहाँ किसी भी अन्य फाइल भी जिसमें मैं करने के लिए है है: और अन्य फ़ाइल जिसमें मैं परिवर्तन किया "sdk_config.ini" है परिवर्तन करें?

+0

आप पुष्टि कर सकते हैं कि यह वास्तव में सही लाइव समाप्ति बिंदु तक पहुंचने के लिए कोशिश कर रहा है? – Gerzie

+0

@PayPal_Patrick मुझे नहीं पता कि इसकी पुष्टि कैसे करें? क्या आप मुझे मार्गदर्शन कर सकते हैं? – user2524046

+0

@PayPal_Patrick मुझे यह लॉग फ़ाइल में मिल रहा है: 'पेपैल \ कोर \ PPHttpConnection: https: // api.paypal.com/v1/भुगतान/भुगतान' से कनेक्ट हो रहा है। तो, मुझे लगता है कि यह सही लाइव एंडपॉइंट तक पहुंच रहा है। – user2524046

उत्तर

2

टिप्पणियों से उत्तर - @PayPal_Patrick Thanx दोस्त! मैंने इस मुद्दे को हल किया है।

वास्तव में समस्या मेरी तरफ से नहीं थी। मैं सब ठीक से कर रहा था।

ग्राहक ने अपना लाइव खाता सक्षम नहीं किया है इसलिए मैं लाइव प्रमाण-पत्रों का उपयोग करके भुगतान अनुरोध करने में असमर्थ था। किसी भी तरह, आपकी मदद के लिए thanx!

3

मुझे एक ही समस्या का सामना करना पड़ा तो समाधान मिला।

आप live को sandbox से मोड बदलने के लिए है और FINE को log.LogLevelDEBUG से:

/* Sandbox */ 
$apiContext->setConfig(
    array(
     'mode' => 'sandbox', 
     'log.LogEnabled' => true, 
     'log.FileName' => '../PayPal.log', 
     'log.LogLevel' => 'DEBUG', // PLEASE USE FINE LEVEL FOR LOGGING IN LIVE ENVIRONMENTS 
     'cache.enabled' => true, 
     // 'http.CURLOPT_CONNECTTIMEOUT' => 30 
     // 'http.headers.PayPal-Partner-Attribution-Id' => '123123123' 
    ) 
); 

/* For Live */ 
$apiContext->setConfig(
    array(
     'mode' => 'live', 
     'log.LogEnabled' => true, 
     'log.FileName' => '../PayPal.log', 
     'log.LogLevel' => 'FINE', // PLEASE USE FINE LEVEL FOR LOGGING IN LIVE ENVIRONMENTS 
     'cache.enabled' => true, 
     // 'http.CURLOPT_CONNECTTIMEOUT' => 30 
     // 'http.headers.PayPal-Partner-Attribution-Id' => '123123123' 
    ) 
); 
+0

मोड को बदलकर मेरी त्रुटि तय की गई। धन्यवाद! – Lucas

संबंधित मुद्दे