简体   繁体   中英

Server is not Recognizing the json, sending request using restSharp

i am trying to post some json to jboss services. using restSharp.. my code is as follows.

        RestClient client = new RestClient(baseURL);
        RestRequest authenticationrequest = new RestRequest();
        authenticationrequest.RequestFormat = DataFormat.Json;
        authenticationrequest.Method = Method.POST;
        authenticationrequest.AddParameter("text/json",                  authenticationrequest.JsonSerializer.Serialize(prequestObj), ParameterType.RequestBody);

and also tried this one

        RestClient client = new RestClient(baseURL);
        RestRequest authenticationrequest = new RestRequest();
        authenticationrequest.RequestFormat = DataFormat.Json;
        authenticationrequest.Method = Method.POST;                           authenticationrequest.AddBody(authenticationrequest.JsonSerializer.Serialize(prequestObj));

but in both cases my server is giving me error that json is not in correct format

Try using JsonHelper to prepare your json as the following

 string jsonToSend = JsonHelper.ToJson(prequestObj);

and then

authenticationrequest.AddParameter("application/json; charset=utf-8", jsonToSend, ParameterType.RequestBody);

I have found what was going wrong...

i am using RestSharp in windows metro Style, so downloaded source code and make some modifications... so that modifications in the function PutPostInternalAsync i just added this modifications

 httpContent = new StringContent(Parameters[0].Value.ToString(), Encoding.UTF8, "application/json");

and it solve the problem....

Parameters[0].Value.ToString() instead of this you can write a method which can return the serialize json object. (as string).

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM