JSON-RPC exception
-
27-05-2021 - |
سؤال
I use json-rpc client from json-rpc.net in my windows phone application. Code:
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);
});
}
And then I want get data, application exit with 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()
المحلول
If the json-rpc client parser code breaks when receiving a response, and it dies on the first character (Line 0, position 0
) which happens to be a <
character, you'd have to suspect the service has returned XML.
Are you sure you're speaking to the right service endpoint? With the right protocol?
لا تنتمي إلى StackOverflow