1

Web サービスを使用して、PHP cURL を介して投稿しようとしています。つまり、Webサービスを使用するとき。フィドラーの応答は問題ありませんが、私のphpスクリプトでは、500 - 内部サーバーエラーしか表示されません。私が欠けているものを誰か教えてもらえますか?

ページ: http://badmintonpeople.dk/DBF/Spiller/VisSpiller/#88555

「vælg Spiler」ボタンを使用します - Web サービスがあります: http://badmintonpeople.dk/SportsResults/Components/WebService1.asmx/SearchPlayer

フィドラーでは、200 という素晴らしい応答が返されます: dl.dropboxusercontent.com/u/885897/fiddler.jpg

しかし、以下のコードでは何も得られません...理由を教えてもらえますか? :-/

$urltopost = "http://badmintonpeople.dk/SportsResults/Components/WebService1.asmx/SearchPlayer";
    $data = array (
      "callbackcontextkey" => "7CF866FEDDD42B1529DAED8272DA83AF72EFBB896E3176EFB70CD34D02A81BF647D420A3F880C10178E804AC21CA4999",
      "selectfunction" => "SPSel1",
      "name" => "",
      "clubid" => "1600",
      "playernumber" => "",
      "gender" => "",
      "agegroupid" => "",
      "searchteam" => false,
      "agegroupcontext" => 0,
      "tournamentdate" => "",
    );                                                                   

$data_string = json_encode($data);                                                                                   

$ch = curl_init('http://badmintonpeople.dk/SportsResults/Components/WebService1.asmx/SearchPlayer');                                                                      
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);
echo $result; 

更新: 応答は次のとおりです: {"メッセージ":"要求の処理中にエラーが発生しました。","StackTrace":"","ExceptionType":""}

ボーナス情報。私の友人は、このコードを使用して .NET で数秒で投稿を機能させましたが、PHP がこの仕事を実行できないとは想像できませんか?

.NET コンソール アプリケーション

class Program
    {
        static void Main(string[] args)
        {
            const string URI = "http://badmintonpeople.dk/SportsResults/Components/WebService1.asmx/SearchPlayer";
        const string myParameters = "{'callbackcontextkey':'874DB247192F515BC3735AD164D4350C6DD5A0CFD186112C97A41B3B9FE97F81637FBEF0AEDF4A5939481BAFFFBD0A99','selectfunction':'SPSel1','name':'','clubid':'1600','playernumber':'','gender':'','agegroupid':'','searchteam':false,'agegroupcontext':0,'tournamentdate':''}";

        using (var wc = new WebClient())
        {
            wc.Headers[HttpRequestHeader.ContentType] = "application/json; charset=UTF-8";
            string HtmlResult = wc.UploadString(URI, myParameters);
        }
    }
}

前もって感謝します!

4

0 に答える 0