2013-04-24 1 views
2

Я пытаюсь реализовать Klarna проверку, используя коды, предоставляемые ими here.Klarna контроль возвращения HTTP_STATUS_CODE 500 Внутренняя ошибка сервера в ответ

Реализация процесса как направлена ​​по этой ссылке -> https://docs.klarna.com/en/getting-started

Я нахожусь используя коды внутри папки docs/examples, я поместил библиотеку (папку src) на правильный путь, предоставив eid и общий секрет с идентификатором магазина и общим секретом, предоставленным klarna, когда я создал тестовую учетную запись. here.

// Merchant ID 
$eid = 'eid'; 

// Shared secret 
$sharedSecret = 'sharedsecret'; 

Я заменил все Ид и общий SCRET во всех файлах, а также изменили ссылки на файлы должным образом,

i.e. example.com to mywebsiteurl.com

$create['purchase_country'] = 'SE'; 
$create['purchase_currency'] = 'SEK'; 
$create['locale'] = 'sv-se'; 
$create['merchant']['id'] = $eid; 
$create['merchant']['terms_uri'] = 'http://example.com/terms.html'; 
$create['merchant']['checkout_uri'] = 'http://example.com/checkout.php'; 
$create['merchant']['confirmation_uri'] 
    = 'http://example.com/confirmation.php' . 
    '?sid=123&klarna_order={checkout.order.uri}'; 
// You can not receive push notification on non publicly available uri 
$create['merchant']['push_uri'] = 'http://example.com/push.php' . 
    '?sid=123&klarna_order={checkout.order.uri}'; 

После установки все вещи правильно, когда я нажимаю Docs/примеры/checkout.php Я получаю исключение, потому что сервер отвечает кодом ошибки. Исключение выбрасываются BasicConnector.php кода, приведенным ниже, получила

* Throw an exception if the server responds with an error code. 
* 
* @param Klarna_Checkout_HTTP_Response $result HTTP Response object 
* 
* @throws Klarna_Checkout_HTTP_Status_Exception 
* @return void 
*/ 
protected function verifyResponse(Klarna_Checkout_HTTP_Response $result) 
{ 
    // Error Status Code recieved. Throw an exception. 
    if ($result->getStatus() >= 400 && $result->getStatus() <= 599) { 
     throw new Klarna_Checkout_ConnectorException(
      $result->getData(), $result->getStatus() 
     ); 
    } 
} 

ошибки

Fatal error: Uncaught exception 'Klarna_Checkout_ConnectorException' with message '{"http_status_code":500,"http_status_message":"Internal Server Error","internal_message":""}' in klarna/docs/examples/src/Klarna/Checkout/BasicConnector.php:212

Так что мой вопрос заключается в следующем,

  1. Am Я не посылая правильный запрос, потому что я вижу, что запрос создан , и здесь не указана ошибка?

  2. Могу ли я сделать что-нибудь, чтобы получить правильный ответ с сервера?

  3. Когда сервер отвечает кодом ошибки при запросе cURL ?

Благодарим вас за внимание и помощь. Я очень ценю это.

ответ

5

Ну, решение для такого большого вопроса было довольно простым.

Установка eid = "200" и sharedsecret = "test". Каковы учетные данные тестовой учетной записи.

В моем случае я использовал свои оригинальные учетные данные торгового аккаунта.

+2

Как я должен это знать? –

+2

, попросив команду поддержки Кларны :) действительно, это позор. В документации не указано, где я должен использовать набор учетных данных по умолчанию для тестового теста Klarna Checkout. – Subrata

+0

Я потратил больше времени на это! Их поддержка/документация сильно засасывает, если вам нужно реализовать расширенную интеграцию Klarna, и вы используете технологию, для которой нет готовой API-оболочки. Я использую Ruby on Rails, и у них нет абсолютно никакой поддержки в написании обертки API - мне нужно читать C# и PHP-код и переводить его в Ruby ... –

Смежные вопросы