2012-03-29 2 views
0

Я использую клиент json-rpc из json-rpc.net в приложении для Windows-телефона. Код:Исключение JSON-RPC

var client = new AustinHarris.JsonRpc.JsonRpcClient(new Uri("http://www.raboof.com/projects/jayrock/demo.ashx")); 
var myObs = client.Invoke<string>("echo", "hello world", Scheduler.ThreadPool); 
myObs.Subscribe(
    onNext: _ => 
    { 
     Console.WriteLine(_.Result); 
    }); 
     } 

И тогда я хочу получить данные, приложение выхода с JsonReaderException:

Newtonsoft.Json.JsonReaderException 
    Message=Unexpected character encountered while parsing value: <. Line 0, position 0. 
    LineNumber=0 
    LinePosition=0 
    Path="" 
    StackTrace: 
     at Newtonsoft.Json.JsonTextReader.ParseValue() 
     at Newtonsoft.Json.JsonTextReader.ReadInternal() 
     at Newtonsoft.Json.JsonTextReader.Read() 
     at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.ReadForType(JsonReader reader, JsonContract contract, Boolean hasConverter, Boolean inArray) 
     at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.Deserialize(JsonReader reader, Type objectType) 
     at Newtonsoft.Json.JsonSerializer.DeserializeInternal(JsonReader reader, Type objectType) 
     at Newtonsoft.Json.JsonSerializer.Deserialize(JsonReader reader, Type objectType) 
     at Newtonsoft.Json.JsonConvert.DeserializeObject(String value, Type type, JsonSerializerSettings settings) 
     at Newtonsoft.Json.JsonConvert.DeserializeObject(String value) 
     at AustinHarris.JsonRpc.JsonRpcClient.<>c__DisplayClassa`1.<>c__DisplayClassc.<>c__DisplayClasse.<Invoke>b__9(IAsyncResult riar) 
     at System.Net.Browser.ClientHttpWebRequest.<>c__DisplayClassa.<InvokeGetResponseCallback>b__8(Object state2) 
     at System.Threading.ThreadPool.WorkItem.WaitCallback_Context(Object state) 
     at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state) 
     at System.Threading.ThreadPool.WorkItem.doWork(Object o) 
     at System.Threading.Timer.ring() 
+0

Если он получает '<' назад как первый символ, вы уверены, что это служба JSON-RPC? Похож на REST + XML, XML-RPC или SOAP. –

ответ

1

Если JSON-RPC брейков клиент анализатор кода при получении ответа, и он умирает на первом символе (Line 0, position 0), который является символом <, вы должны подозревать, что служба вернула XML.

Вы уверены, что разговариваете с нужной конечной точкой обслуживания? С правильным протоколом?

Смежные вопросы