我在使用PHP連接到ASP.Net Web服務時遇到問題。從PHP連接到ASP.Net Web服務並檢索數據爲JSON
Web服務被稱爲是工作,因爲它返回時,我們連接使用Javascript來自同一個域,但是當我嘗試使用PHP我收到以下錯誤連接數據:
HTTP/1.1 500 Internal Server Error Content-Type: application/json; charset=utf-8 Server: Microsoft-IIS/7.5 jsonerror: true X-Powered-By: ASP.NET Date: Tue, 17 May 2011 03:40:17 GMT Connection: close Content-Length: 819 {"Message":"Invalid JSON primitive: birthday.","StackTrace":" at System.Web.Script.Serialization.JavaScriptObjectDeserializer.DeserializePrimitiveObject()\ [etc]
的內容類型設置爲「申請/ JSON;字符集= UTF-8」在PHP,我們正在嘗試發送一個稱爲參數「生日」使用PHP以下POST數據:
$post_data = array( 'birthday' => 'none' );
我認爲ASP Web服務由於某種原因無法解析'生日'參數,但我不知道爲什麼。
在調用Web服務之前,我需要將POST數據顯式編碼爲PHP中的JSON嗎?
謝謝。
你可以嘗試觀測數據上行駛與'Fiddler'或'WireShark'線比較工作代碼非工作代碼,看看有沒有什麼不同。 – mellamokb 2011-05-17 04:28:20
javascript的發佈還是使用get?你能提供可用的javascript嗎 – 2011-05-17 04:46:41