2013-08-06 15 views
0

我序列使用JsonSerializer在.NET一些對象(在Windows計算機上)創建 序列化的字符串看起來是這樣的:不能在PHP解碼JSON,通過.NET JSONSerializer

{ 
    "ItemId":"someID", 
    "Properties": 
    { 
     "Title":"someTitle", 
     "Text":"someText", 
     "Time":"someTime" 
    } 
} 

然後我把它發送到我的Linux服務器,使用HttpWebRequest。 在Linux端,我運行PHP(使用LAMP),當我在PHP服務器上獲取它時,Json字符串看起來與我發送它之前完全一樣,但是當我嘗試解碼它時(使用json_decode($myJsonStr, true)),我得到語法錯誤。 我的Json還包含一些Unicode字符(希伯來字母) 任何想法?

最好的問候,Nadav

+1

那是什麼錯誤信息? 'json_last_error()'說了些什麼? JSON如何看待hexeditor?有任何想法嗎? – mario

回答

1

我不知道你如何填寫您的$myJsonStr,但有時這是最好的解碼JSON從PHP的流走的是直接輸入,就像這樣:

$data = file_get_contents('php://input'); 
$json = json_decode($data); 

這是我從第三方接收JSON時用來解決其中一種不兼容問題。