2017-08-24 3 views
0

PHPとAPIを接続しようとしています。しかし、私が得るのは、「コマンドパラメータが必要です」です。私はRAW Bodyデータを送る必要があり、PUTメソッドにする必要があります。JSONと原本を使用したPHP cURL

JSONデータは、私はそれがなく、PHPスクリプトで働くポストマンでそれをしようとここに私のコード

$curl = curl_init($URL); 

curl_setopt($curl, CURLOPT_CUSTOMREQUEST, "PUT"); 

curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false); 
curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false); 

$jsonData = array(
    'OutputID' => 'Some key', 
    'Activate' => true, 
); 

$jsonDataEncoded = json_encode($jsonData); 
curl_setopt($curl, CURLOPT_POST, true); 
curl_setopt($curl, CURLOPT_POSTFIELDS, $jsonDataEncoded); 

curl_setopt($curl, CURLOPT_HTTPHEADER, array( 
    'Content-Type: application/json', 
    'Content-Length: 0', 
    $Authorization_Token_Key)); 


if(curl_exec($curl) === false) 
{ 
    echo 'Curl error: ' . curl_error($curl); 
} 
else 
{ 
    echo ''; 
} 

ある

{ 
"OutputID":"Some key", 
"Activate":true, 
} 

のように見える必要があります。右:)

は私が

curl_setopt($curl, CURLOPT_POST, true); 

そして、それは魔法のように動作

感謝を削除

+0

あなたは何を意味すると拡大できますそれはPHPで動作しない? – Mike

+0

'PUT'メソッドを使いたいので、' curl_setopt($ curl、CURLOPT_POST、true);を削除するべきだと思います。 –

+0

'Content-Length'は0ではありません。 – ishegg

答えて

0

@Patrick

あなた

+0

代わりに' curl_setopt($ curl 、CURLOPT_PUT、true); '。 https://stackoverflow.com/questions/19257295/send-put-request-with-php-curlをご覧ください。 – Mike

関連する問題