Razorpay x Api вызывает BAD_REQUEST_ERROR, используя Laravel

Я пытаюсь интегрировать razorpay x api для создания контактов, и это пример данных запроса API от razorpay. reference_id и примечания необязательны.

curl -u <YOUR_KEY>:<YOUR_SECRET> \
-X POST https://api.razorpay.com/v1/contacts \
-H "Content-Type: application/json" \
-d '{
    "name":"Gaurav Kumar",
    "email":"[email protected]",
    "contact":"9123456789",
    "type":"employee",
    "reference_id":"Acme Contact ID 12345",
    "notes":{
        "notes_key_1":"Tea, Earl Grey, Hot",
        "notes_key_2":"Tea, Earl Grey… decaf."
    }
}'

а ниже приведены данные моей функции curl, отправленные в razorpay.

$user=User::find($request->input('user_id'));
$payload= '{
    "name":"'.$user->name.'",
    "email":"'.$user->email.'",
    "contact":"'.$user->mobile_number.'"
    "type":"customer"
}';
$key="test_key";
$secret="secret_key";
$url = 'https://api.razorpay.com/v1/contacts';
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_POSTFIELDS, $payload);
curl_setopt($ch, CURLOPT_HTTPHEADER, ['Content-Type:application/json']);
curl_setopt($ch, CURLOPT_USERPWD, $key . ":" . $secret);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$result = curl_exec($ch);
print_r($result);
curl_close($ch);

Я получаю ответ, так как требуется поле имени, хотя я отправил все поля запроса в параметре запроса. Пожалуйста, предложите мне, если моя функция завитка правильная или нет. ниже приведен ответ от вызова API { "ошибка": { "код": "BAD_REQUEST_ERROR", "описание": "Обязательно поле имени.", "метаданные": {}, "поле": "имя" } }


person Web Developer    schedule 06.05.2020    source источник
comment
Не создавайте свой собственный JSON, как это. Создайте массив с соответствующими данными, затем используйте json_encode. Это гарантирует, что ваш json правильный. (В котором, кстати, отсутствует запятая между контактом и типом)   -  person aynber    schedule 06.05.2020
comment
можешь привести пример   -  person Web Developer    schedule 06.05.2020
comment
Прочитайте ссылку, которую я дал, там есть довольно много примеров.   -  person aynber    schedule 06.05.2020


Ответы (1)


Укажите способ запроса:

curl_setopt($ch, CURLOPT_POST, 1);
person Rashmi Ranjan Sahoo    schedule 19.09.2020