Как я могу разместить объект JSON через cURL в php

Как я могу публиковать объекты JSON для веб-службы через cURL в php?

У меня есть массив

$data = array('username'=>'abc','password'=>'pass');

Веб-сервис, который я хочу вызвать, принимает объект JSON, если я конвертирую $data в JSON с json_encode, он не работает для меня.

$data = json_encode($data);

curl_setopt($ch, CURLOPT_POST      ,1);
curl_setopt($ch, CURLOPT_POSTFIELDS    ,$data);

Я что-то делаю неправильно? или мне нужно установить еще несколько параметров?

Спасибо за помощь заранее.

Tanmay

Ответы

Ответ 1

Добавить

curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: application/json')); 

чтобы указать, что данные JSON. По умолчанию используется application/x-www-form-urlencoded.