2012-10-22 23 views
5

Kıvrılma isteği yapmam gerekiyor, bu satırı "curl -X POST -H 'İçerik Türü: uygulama/json' -d "ve PHP'ye" çevirmek "gerekir. Sorun, "-X", "-H" ve "-d" nin ne anlama geldiğini bilmem. curl -X POST -H 'İçerik Tipi: uygulama/json' -d - PHP

curl_setopt($ch, CURLOPT_HTTPHEADER, array(
     'Accept: application/json', 
     'Content-Type: application/json', 
     'Content-Length: '. strlen($itemJson)) 
    ); 

ben başlığında böyle bir şey denedik ( $itemJson bir JSON dizedir) ama hata 400.

Ben yanlış bir şekilde isteği yaptığımı sanıyorlar aldık. Birisi bana yardım edebilir mi?

+2

-X yöntem şekli anlamına gelmektedir aşağıda deneyebilirsiniz. -H, üstbilgiler anlamına gelir ve -d, istekle birlikte veri tatının gönderileceği anlamına gelir. – Layke

+0

Teşekkürler! Talebin doğru olduğunu düşünüyorum, verileri kontrol edeceğim. – fred00

+0

Curl komutunu PHP'ye dönüştürmek için https://incarnate.github.io/curl-to-php/ – Sonu

cevap

8

Sen

$data = array("name" => "Hagrid", "age" => "36");                  
$data_string = json_encode($data);                     

$ch = curl_init('http://somedomain.com/test.php');                  
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");                  
curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string);                 
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);                  
curl_setopt($ch, CURLOPT_HTTPHEADER, array(                   
    'Content-Type: application/json',                     
    'Content-Length: ' . strlen($data_string))                  
);                             

$result = curl_exec($ch); 
+0

Hayır ... Yine 400 hatası aldım. – fred00

+0

Güncellenen kodunuzu yapıştırabilir misiniz? – GBD

+0

Teşekkürler! .. İşte bu, POST'u eski bir URL'ye gönderiyordum. – fred00