【发布时间】:2026-01-26 04:50:01
【问题描述】:
在尝试将观察程序添加到现有 Jira 问题时,我的 JSON 字符串存在语法问题,但我无法弄清楚它是什么。
string URL = "http://jira/rest/api/2/issue/TS-1000/watchers"
string JSON = @"{{""watchers"":[{{""name"":""jdoe""}}]}}"
当我通过 POST 将 JSON 提交到 URL 时,我得到 BAD REQUEST 400 和 The request sent by the client was syntactically incorrect
我已经通过验证器运行了 JSON,结果很好。我也尝试了不同的东西,比如“用户名”而不是“名字”,更多的用户名引号,比如""""jdoe"""",当它被提交时会产生""jdoe"",等等,但似乎没有什么不同。
在程序的其他地方我可以创建和关闭 Jira 票证 - 所以我知道我的 HTTPREQUEST 和身份验证代码很好(因此我没有发布它。)
我已经研究过这个问题,并且有很多 CURL 的示例,但这对我没有多大帮助。
【问题讨论】:
-
Json 不应该是
@"{""watchers"":[{""name"":""jdoe""}]}"吗? -
好吧,为了简洁起见,我在最初的帖子中压缩了代码。整行是这样的:
string addJiraWatcher = string.Format(@"{""watchers"":[{""name"":""{0}""}]}", ConfigurationManager.AppSettings["theboss"]);但是当我使用该字符串时,我得到了异常Input string was not in a correct format.。 :/ 我以这种方式使用的所有其他 JSON 查询都需要将大括号加倍。但是我已经将字符串输出到标签并删除了双引号和大括号 - 所以我假设这就是它在 webrequest 中提交的方式。