2010-09-24 88 views
1

我有一個web服務..只是說example.com。 我需要做一個HTTP POST來在PHP中調用這個Web服務並將數據發送到這個Web服務。我發佈的數據來自表單,因此可用於變量。我已經讀過,這可能是一種方式來做到這一點,但我不確定,所以任何正確的方向指針將不勝感激。HTTP POST通過PHP發送到REST服務

$service_url = 'http://example.com/rest/user'; 
$curl = curl_init($service_url); 
$curl_post_data = array(
$compName, 
$package, 
$email1, 
$telephone1 
); 

curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); 
curl_setopt($curl, CURLOPT_POST, true); 
curl_setopt($curl, CURLOPT_POSTFIELDS, $curl_post_data); 
+0

是的。 cURL將是要走的路 - 如果它已在服務器上啓用。你試過了嗎? – 2010-09-24 08:19:52

+0

@Nev,還沒有嘗試過。我仍然在等待Web服務的URL,但我只是想確定這是一條路。謝謝 – 109221793 2010-09-24 08:21:48

回答

2

是的,應該做的伎倆。只是執行該捲曲手柄:

$returnData = curl_exec($curl); 

請注意,當你使用一個數組作爲你的POSTFIELDS而不是字符串「鍵= VAL &鍵2 = VAL ......」將其設置爲multipart/form-data而不是application/x-www-form-urlencoded。我知道我在某個時候對自己有過麻煩。

+0

@Birk ...謝謝你的回覆。最後我只是堅持這一行嗎?我會試一試,看看我如何繼續。我真的沒有辦法將它作爲一個字符串發佈,所以我想我會穿過那座橋,如果我來的話:)謝謝! – 109221793 2010-09-24 08:27:51

+0

你剛剛把curl_exec放到最後。它用當前設置執行你的「捲曲」。 – Birk 2010-09-24 08:40:28

+0

非常感謝Birk :) – 109221793 2010-09-24 08:51:56