Почему Jayrock (.NET JSON-RPC Framework) не нравится мой запрос?
Привет быстрый вопрос о Jayrock... У меня есть веб-сервис Jayrock JSON-RPC, который в целом работает нормально. Тем не менее, когда я пытаюсь опубликовать в свой jqGrid editUrl, Jayrock выдает ошибку. Веб-сервис прекрасно работает в других ситуациях.
У кого-нибудь есть подсказка, почему Джейроку не нравится следующий запрос? Возможно, способ настроить Jayrock для принятия этого запроса?
Запрос:
POST /StoryManager/StoryManager.ashx/setPageItemRoles HTTP / 1.1
Хост: localhost:2064
Пользователь-агент: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1) Gecko/20090624 Firefox/3.5 (.NET CLR 3.5.30729)
Принять: * / *
Accept-Language: en-us, en; q = 0,5
Accept-Encoding: gzip, выкачать
Accept-Charset: ISO-8859-1,utf-8;q=0,7,*;q=0,7
Keep-Alive: 300
Подключение: keep-alive
Тип контента: application/x-www-form-urlencoded; кодировка = UTF-8
X-Requested-With: XMLHttpRequest
Реферер: http://localhost:2064/StoryManager/PageItemDetail.aspx
Длина контента: 183
Cookie: ASP.NET_SessionId = uycy1qmowzzqhiac1kg3e455
Прагма: без кеша
Cache-Control: без кеша
название = &assignedto Художественная =dfghdfgh& назначается =2009-06-25T14%3A52% 3A00%3A24.0868931-05 & вследствие =2009-08-02T14%3A52% 3A00%3A24.0868931-05 & завершено =2009-07-17T14%3A52%3A24.0868931-05%3A00& ID =3
Отклик:
{"id": null, "error": {"name": "JSONRPCError", "message": "Найдена строка, где ожидался объект.", "stackTrace": "в Jayrock.Json.JsonReader.ReadToken (токен JsonTokenClass) в c:\Projects\Public\Jayrock\rel\rel-0.9.8316\src\Jayrock.Json \ Json \ JsonReader.cs: строка 142 \ r \ n в Jayrock.JsonRpc.JsonRpcDispatcher.ParseRequest (ввод TextReader) в c:\Projects\Public\Jayrock\rel\rel-0.9.8316\src\Jayrock \ JsonRpc \ JsonRpcDispatcher.cs: строка 271 \ r \ n в Jayrock.JsonRpc.JsonRpcDispatcher.Process (ввод TextReader, вывод TextWriter) в c:\Projects\Public\Jayrock\rel\rel-0.9.8316\src\Jayrock \ JsonRpc \ JsonRpcDispatcher.cs: строка 127","errors":[{"name":"JsonException","message":"Found Строка, в которой ожидался объект."}]}}
1 ответ
Потому что вы отправляете запрос application/x-www-form-urlencoded с "подобными форме" данными публикации вместо application/json с правильным объектом json.