Я тестирую API встраивания, и у меня есть проблема с тем, что возвращается. Мой код в Javascript является последователем, который отправляет URL-адрес PHP.
JAVASCRIPT
$.post('../../../services/rpc.php',
{functionName: 'getEmbed',
url: $('#story-post-new').val()},
function(response){
$.each(response, function(index, val){
...
});
})
PHP
$url = 'http://api.embed.ly/1/extract?url='.$_POST['url'].';key=xxx;';
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
echo json_encode(curl_exec($ch));
Поэтому в PHP я вызываю api using extract, выполняю этот url и, наконец, делаю json_encode в возвращаемую строку. В Javascript ответ не является объектом JSON и по-прежнему является строкой, поэтому функция $.each не работает.
Как я могу вернуть JSON из PHP?
Благодарю.
Проблема решена. Что происходило? Embedly возвращает строку с номером в конце ее, и если бы я пытался JSON.parse
очевидно, был неправ. Просто глупо...