【问题标题】:Karate: How to send raw request and disable embedded expressions空手道:如何发送原始请求和禁用嵌入式表达式
【发布时间】:2021-03-15 21:14:44
【问题描述】:

如何发送用括号括起来的原始请求并防止空手道将其解析为"embedded expression"

示例 1:正确发送字符串 '(1+2)' 作为有效负载(如预期的那样)。

Given request '(1+2)'

示例2:与多行相同的字符串被检测为“嵌入表达式”,并由空手道转换为类型号3(在日志和接收API中可以清楚地看到):

Given request
"""
(1+2)
"""

为什么会这样?我怎样才能发送真正的原始字符串,不管里面有什么?换句话说:如何禁用嵌入式表达式?

我的背景是我需要发送多行原始字符串作为有效负载。一些子字符串用括号括起来,这会导致接收 API 出错(为了简化我的问题,我将示例减少到 1 行)。

【问题讨论】:

    标签: karate raw


    【解决方案1】:

    使用texthttps://github.com/intuit/karate#text

    * url 'https://httpbin.org'
    * path 'anything'
    * text body =
    """
    (1+2)
    """
    * request body
    * method post
    

    另请参阅“类型转换”的文档。另一个参考:https://stackoverflow.com/a/64328206/143475

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-11-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多