コマンドラインcurlを使用してXMLをサーバーに送信しましたが、私は完全に成功しました。私が実際に設定している唯一のオプションは、content-typeをapplication/xmlに設定するヘッダーです。PHP curlがコマンドラインCurlのように動作しない
私が回ってPHPでこれを試してみると、私は500のサーバーエラーが発生しています。
curl_setopt($curl, CURLOPT_POST, true);
curl_setopt($curl, CURLOPT_HTTPHEADER, array('Content-Type: application/xml'));
curl_setopt($curl, CURLOPT_POSTFIELDS, $request);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
は、私もこれまでにコピーして、コマンドラインのカールにPHPアプリケーションからXML出力を貼り付けするように行ってきた:次のように私は設定していますすべての
限りカールのオプションがありますそれはうまく動作します。さまざまな組み合わせでさまざまなカールオプションを試してみました。
Iが発生しているエンコーディングの問題のいくつかの種類があります推測しなければならなかったが、私は、データをURLエンコードしようとしたと私は実際に代わり500
の不正な要求を取り戻すなら、私は完全によ誰かが私がそれらを聞いて好きなアイデアを持っている場合は、損失。
ありがとうございます!
curl_setopt($curl, CURLOPT_HTTPHEADER, array('Content-Type: application/xml'));
へ:
クイック追加:サーバーレスポンスはNull例外エラーですが、再度送信されるデータは同じである必要があります。 – PetrolMan
500は通常、単純な構文問題のターンエラーレポートです。おそらくそれを見つけるでしょう。 – Zac
申し訳ありませんが、より明確になっているはずです。 500は、カールが通信しているサーバーからのものです。 – PetrolMan