Метод PHP CURL POST дает 500 код ответа - PullRequest
0 голосов
/ 04 декабря 2018

Привет, я знаю, что подобные вопросы уже есть, но я исключил их.

Итак, я пытаюсь создать простой метод POST с помощью curl и постоянно получаю ошибку 500. Я что-то пропустил?

// Get cURL resource
$curl = curl_init();

//POST request body
$post_data = array(
    'subscription_uuid' => $subscription_uuid,
    'merchant' => $merchant_id
);

echo "JSON in POSTFIELDS:" . json_encode($post_data, JSON_PRETTY_PRINT) . "\n";

// Set Headers, endpoint and option to output response as string
curl_setopt_array($curl, array(
    CURLOPT_RETURNTRANSFER => 1,
    CURLOPT_URL => 'https://subscriptions-jwt.fortumo.io/subscriptions/cancel',
    CURLOPT_POST => 1,
    CURLOPT_HTTPHEADER => array(
        'Content Type: application/json' ,
        'Authorization: Bearer' . " " . $jwt

    ),
    CURLOPT_POSTFIELDS => json_encode($post_data)
));

// Send the request & save response
$unsubscribe_response = curl_exec($curl);

$statusCode = curl_getinfo($curl, CURLINFO_HTTP_CODE);

//Request URL:
echo "Unsubscribe Request URL:\n" . curl_getinfo($curl, CURLINFO_EFFECTIVE_URL) . "\n";
echo "Error Code:" . $statusCode . "\n";

И вот ответ, который я получаю от этого блока кода (упростил это с помощью echo-s):

JSON in POSTFIELDS:{
    "subscription_uuid": "<<MY-TOKEN>>",
    "merchant": "<<MY-TOKEN>>"
}
Unsubscribe Request URL:
https://subscriptions-jwt.fortumo.io/subscriptions/cancel
Error Code:500

Странно то, что при использовании точно такого же набора заголовков, JSONpostfields и URL в таком инструменте, как Advanced REST клиент, все работает нормально, и я получаю 200 ответов без проблем.

Что-то не так с моим кодом.Может кто-нибудь, пожалуйста, определите проблему?Заранее спасибо!

...