Jump to content

Archived

This topic is now archived and is closed to further replies.

blunt

PHP CURL / JSON-RPC Problem

Recommended Posts

Hello, I am having a problem using CURL to query a JSON-RPC server, If I do the following using CURL via commandline:
[quote]
-bash-2.05b$ curl --data-binary '{"method": "push", "value": "hello"}' -H 'content-type: text/plain;'  http://192.168.5.37:8080/json
"OK"-bash-2.05b$
-bash-2.05b$ curl --data-binary '{"method": "pop"}' -H 'content-type: text/plain;'  http://192.168.5.37:8080/json
"hello"-bash-2.05b$
[/quote]
This executes successfully as you can see, now I have the following PHP Code:
[code]
<?php
// setup json data
$url = "http://192.168.5.37:8080/json";
$post_data = array('method' => 'push', 'value' => 'testing');
$post_data = json_encode($post_data);
echo $post_data.'<br/>';
// execute json request
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_HEADER, 'content-type: text/plain;');
curl_setopt($ch, CURLOPT_TRANSFERTEXT, 0);
curl_setopt($ch, CURLOPT_POSTFIELDS, $post_data);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
// decode result
if ($result = @curl_exec($ch)) {
echo 'query success<br/><pre>';
print_r(json_decode($result));
echo '</pre>';
} else {
'query failed';
}
curl_close($ch);
?>
[/code]
Script outputs the following:
[quote]
{"method":"push","value":"testing"}
query success

stdClass Object
(
    [response] => stdClass Object
        (
            [error] => Unkown method, list of known methods: ['push', 'pop']
        )

)
[/quote]

Is there anything here I am doing wrong, I have set it to post the data using plaintext in the correct json format... something I'm missing here?

Share this post


Link to post
Share on other sites

×

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.