【发布时间】:2017-05-11 06:50:07
【问题描述】:
我正在调用一个返回多部分 HTTP 响应的 Web api。
以
的形式...possible other content...
--97b6f48d-7f7e-4e96-bd0b-ced047222460
Content-Type: application/json; charset=utf-8
{"key":"this is the JSON"}
--97b6f48d-7f7e-4e96-bd0b-ced047222460--
...possible other content...
我只想要 JSON:{"key":"this is the JSON"}。
GUID 97b6f48d-7f7e-4e96-bd0b-ced047222460 是一个边界标识符,用于识别随机生成的 http 响应部分。
我知道响应中只有一部分包含 JSON 内容。我提取它的最佳方法是什么?
仅供参考,我在邮递员中使用脚本,所以它需要是 javascript。
【问题讨论】:
-
看起来很像这个问题:stackoverflow.com/q/21229418/215552,但我不知道 Postman 是如何编写脚本的。顺便说一句,你可能想领导它,而不是埋葬它。
-
你可以在邮递员脚本中使用正则表达式吗?如果是,那么我认为这将是在字符串中获取对象的最佳方法。
-
@Yousef_Shamshoum 我考虑过这一点,但考虑到 JSON 的递归结构,我认为正则表达式不是合适的解决方案。如果我要手动解析它,最好的办法是扫描第一个和最后一个括号。 (假设我知道响应中只有一个 JSON 文档)
-
你能提供一个返回你的多部分 http 响应的 URL 吗?不能只用 GUID 边界分割
responseBody,然后解析 JSON 吗? -
@shaochuancs 我无法提供网址。是的,这是我的默认计划,解析响应以查找 JSON。做起来很简单,但很乱。我希望有一些标准的方法来拆分邮递员中的响应,因为它是一个 HTTP 标准
标签: javascript json http postman