1

次のコマンド ライン CURL を PHP CURL リクエストに実装したいと考えています。

curl --data username=ekansh&domain=siteURL&password=mypass
http://siteURL:8090/add-user -k -v -u  apiuser:yru3472825fhj

私は同じために以下のコードを試しました:

    $fields = array('domain'=> 'siteURL','password'=> 'mypass','apiuser'=> 
'yru3472825fhj','username'=> 'ekansh');
    $data=>array(CURLOPT_POST => 1,CURLOPT_HEADER => 0,CURLOPT_URL => 
$url,CURLOPT_FRESH_CONNECT => 1,CURLOPT_RETURNTRANSFER => 1,CURLOPT_FORBID_REUSE => 
1,CURLOPT_TIMEOUT => 4,CURLOPT_POSTFIELDS => http_build_query($_POST));
    $ch = curl_init(); 
    $options=$fields+$defaults;
    curl_setopt_array($ch,$options);
    $result=curl_exec($ch) 
    curl_close($ch);

しかし、これは機能していません.. $result で応答がありません。上記のコードをどのように実装できますか?

アップデート

    $fields = array('domain'  => 'siteurl','password' => 'mypass',
'apiuser'=> 'yru3472825fhj','username'=> 'ekansh');
    $data=array(CURLOPT_POST => 1,CURLOPT_HEADER => 0,CURLOPT_URL => 
    'siteurl',CURLOPT_FRESH_CONNECT => 1,CURLOPT_RETURNTRANSFER => 1,
CURLOPT_FORBID_REUSE => 1,CURLOPT_TIMEOUT => 4,
CURLOPT_POSTFIELDS => $fields);
    $ch = curl_init();   
    curl_setopt_array($ch,$data);   
    $result=curl_exec($ch); 
    curl_close($ch);

上記のコードを修正しましたが、まだ機能していません。

4

1 に答える 1

1

$data配列では、次のようにする必要があります。

CURLOPT_POSTFIELDS => $fields

すべてのオプションを設定するには、次のようにする必要があります。

curl_setopt_array($ch, $data);

この行は何もしません:

$options = $fields + $defaults;

+配列では使用できず、決して設定しません$defaults

認証には、次のオプションを使用する必要があります。

CURLOPT_USERPWD => 'apiuser:yru3472825fhj'

に入れる代わりに$data

于 2013-08-22T05:34:49.100 に答える