Почему Jayrock (.NET JSON-RPC Framework) не нравится мой запрос?
-
21-08-2019 - |
Вопрос
Привет, небольшой вопрос о Джейроке...У меня есть веб-сервис Jayrock JSON-RPC, который обычно работает нормально.Однако, когда я пытаюсь опубликовать сообщение в своем EditUrl jqGrid, Jayrock выдает ошибку.Веб-сервис работает нормально и в других ситуациях.
Кто-нибудь знает, почему Джейроку не нравится следующий запрос?Возможно, есть способ настроить Jayrock для принятия этого запроса?
Запрос:
Post /storymanager/storymanager.ashx/setpageitemroles http/1.1
Хозяин:локальный хост: 2064
Пользователь-Агент:Мозилла/5.0 (Windows;У;Windows НТ 5.1;ru-США;RV: 1.9.1) Gecko/20090624 Firefox/3,5 (.NET CLR 3.5.30729)
Принимать:*/*
Принять-Язык:ru-us,en;q=0,5
Принять-кодирование:gzip, сдуть
Принять-кодировка:ISO-8859-1,utf-8;q=0,7,*;q=0,7
Поддержание в живых:300
Связь:поддерживать жизнь
Тип содержимого:приложение/x-www-form-urlencoded;кодировка = UTF-8
X-запрошено-с:XMLHttpRequest
Реферер: http://localhost:2064/StoryManager/PageItemDetail.aspx
Длина контента:183
Файл cookie:ASP.NET_SessionId=uycy1qmowzzqhiac1kg3e455
Прагма:без кэша
Управление кэшем:без кэша
title=Narrative&assignedto=dfghdfgh&assigned=2009-06-25T14%3A52%3A24.0868931-05%3A00&due=2009-08-02T14%3A52%3A24.0868931-05%3A00&completed=2009-07-17T14 %3A52%3A24.0868931- 05%3A00&id=3
Ответ:
{"id": null, "ошибка": {"name": "jsonrpcerror", "Сообщение": "Найдено строку, где ожидал объект.", "stacktrace": "at jayrock.json.jsonreader.readtoken (Jsontokenclass ) в C: Projects public jayrock rel rel-0.9.8316 src jayrock.json json jsonreader.cs: строка 142 r n at jayrock.jsonrpc.jsonrpcdispatcher.parsereQuest (Textreader) в c: projects public jayrock rel rel-0.9.8316 src jayrock jsonrpc jsonrpcdispatcher.cs: строка 271 r n at jayrock.jsonrpc.jsonrpcdispatcher.process (Texstreader, вывод Textwriter) в c c) : Projects public jayrock rel rel-0.9.8316 src jayrock jsonrpc jsonrpcdispatcher.cs: строка 127 "," Ошибки ": [{" name ":" jsonexception "," Сообщение ":" найдено Строка, где ожидался объект. "}]}}
Решение
Потому что вы отправляете запрос application/x-www-form-urlencoded с «формоподобными» данными публикации вместо application/json с правильным объектом json.