1

このコマンドtest.xmlを使用して PHP でこのファイルを送信するにはどうすればよいですか。CURL

 curl -X POST -k -d @test.xml -H "Content-Type: application/xml" --user username:password https://www.url.com

これは私にとってはうまくいきません:

 $ch = curl_init();

 //Get the response from cURL
 curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);

 //Set the Url
 curl_setopt($ch, CURLOPT_URL, 'https://username:password@url.com');

 //Create a POST array with the file in it
 $postData = array(
'testData' => '@test.xml',
 );
 curl_setopt($ch, CURLOPT_POSTFIELDS, $postData);

 // Execute the request
 $response = curl_exec($ch);

また、XML ファイルではなく、コードで記述された XML を送信するにはどうすればよいか考えています。

4

1 に答える 1

1

ユーザー名とパスワードを URL に含めないでください。とcurl_setopt($p, CURLOPT_USERPWD, $username . ":" . $password);を使用できます。以下に例を示します。$username$password

$p = curl_init($url);
curl_setopt($p, CURLOPT_HTTPHEADER, array('Content-Type: application/xml'));
curl_setopt($p, CURLOPT_HEADER, 1);
curl_setopt($p, CURLOPT_USERPWD, $username . ":" . $password);
curl_setopt($p, CURLOPT_POSTFIELDS, $postData);
curl_setopt($p, CURLOPT_POST, 1);
curl_setopt($p, CURLOPT_RETURNTRANSFER, TRUE);
$return = curl_exec($p);
curl_close($p);
于 2016-11-10T20:58:34.807 に答える