400 Bad Request 檢查物件 屬於類型 System.String 的啟動項目時發生錯誤。 發生未預期的字元 Encountered unexpected character
最近在開發WCF的服務時,發生一個奇妙的狀況,在開發過程中,接口對於某些輸入會發生異常,但不是全部的,例如這個:
完全不會進程式中斷點,用了WCF Log機制後,LOG會看到類似的內容:
<ExceptionString>System.Runtime.Serialization.SerializationException: 檢查物件 屬於類型 System.String 的啟動項目時發生錯誤。 發生未預期的字元 'E'。
關於這個問題查了很多文章,大部分提到的都是跟Class有關的內容,但是我納悶我的程式只是string傳入而已,為什麼會遇到這樣的問題呢?
後來在一篇文章中找到一句話:WCF is really sensitive toward JSON objects that it receives for serialization
讓我試了一個方式解決了這個問題:
在POST內容前後加上雙引號",就默默解決了這個問題,下次再遇到要試試看這方法。