API-POST 错误:' 语法错误:无法解析意外字符 \"\\\"。"

问题描述 投票:0回答:1

我正在尝试使用 Insomnia 从网站提取数据,方法是发布一个 API 请求,该请求是我直接从特定请求复制的(通过 cURL (bash))。

这是 JSON(我认为是它导致了错误?):

{
"operationName": "Holdings",
"variables": {
"countrycode": "DE",
"languagecode": "de_DE",
"fundid": "27854"
},
"query": "query Holdings($fundid: String\\u0021, $countrycode: String\\u0021, $languagecode: String\\u0021) {\\n  Portfolio(\\n    fundid: $fundid\\n    countrycode: $countrycode\\n    languagecode: $languagecode\\n  ) {\\n    fundname\\n    producttype\\n    assetclass\\n    portfolio {\\n      topholdings {\\n        asofdate\\n        hldngname\\n        geocode\\n        sectorname\\n        brkdwnpct\\n        frequency\\n        calcbasislocal\\n        calctypelocal\\n        allocflag\\n        hasderivatives\\n      }\\n      dailyholdings {\\n        asofdate\\n        frequency\\n        secticker\\n        isinsecnbr\\n        cusipnbr\\n        secname\\n        quantityshrpar\\n        origcouponrate\\n        sctrname\\n        pctofnetassets\\n        mktvalue\\n        notionalmktvalue\\n        secexpdate\\n        assetclasscatg\\n        mktcurr\\n        contracts\\n      }\\n      fullholdings {\\n        asofdate\\n        asofdatestd\\n        frequency\\n        secticker\\n        isinsecnbr\\n        cusipnbr\\n        secname\\n        quantityshrpar\\n        origcouponrate\\n        sctrname\\n        pctofnetassets\\n        mktvalue\\n        notionalmktvalue\\n        secexpdate\\n        assetclasscatg\\n        mktcurr\\n        contracts\\n        finalmaturitydate\\n        investmentcategory\\n      }\\n    }\\n  }\\n}\\n"
}

这是我不断收到的错误消息:

"errors": \[
"Syntax Error: Cannot parse the unexpected character "\\\\"."
\]

我似乎找不到这个语法错误,也不明白直接复制cURL怎么会出现语法错误?

任何帮助都会很棒!

我检查了查询 URL 和标头,这些似乎都很好,并且也与我过去使用的类似(成功)。

json http syntax insomnia
1个回答
0
投票

换行符的格式为

\n
而不是
\\n

如果您使用双反斜杠

\\
,那么您将转义单反斜杠
\
。尽管这看起来是 String 和 unicode 之间有意为之的。 (
String\\u0021
),因为您可能需要一个反斜杠。

单个反斜杠在转义自身和破坏代码方面非常敏感,因此某些程序必须采取自我措施,用另一个反斜杠转义反斜杠才能正确解析它。通过生成的代码仔细检查反斜杠总是值得的。

© www.soinside.com 2019 - 2024. All rights reserved.