【问题标题】:karate Multi-values in a post request发布请求中的空手道多值
【发布时间】:2021-12-09 21:30:14
【问题描述】:

我在空手道中有以下场景:

Scenario:
Given url 'http://my-url.com'
And form field items = ['item1','item2']
When method post

这就是处理的请求:

1 > POST http://my-url.com
1 > Content-Type: application/x-www-form-urlencoded
1 > Content-Length: 19
1 > Host: my-url.com
1 > Connection: Keep-Alive
1 > User-Agent: Apache-HttpClient/4.5.13 (Java/1.8.0_281)
1 > Accept-Encoding: gzip,deflate
items=item1%26item2

但实际上...我想做的是以下请求:

1 > POST http://my-url.com
1 > Content-Type: application/x-www-form-urlencoded
1 > Content-Length: 19
1 > Host: my-url.com
1 > Connection: Keep-Alive
1 > User-Agent: Apache-HttpClient/4.5.13 (Java/1.8.0_281)
1 > Accept-Encoding: gzip,deflate
items=item1&items=item2
```

Is it possible with karate framework? 

Thanks!

【问题讨论】:

    标签: karate


    【解决方案1】:

    谢谢,您发现了我们在此处跟踪的错误:https://github.com/karatelabs/karate/issues/1862

    幸运的是,我认为您有一个解决方法。只需重复field 项目。让我知道这是否有效:

    * url 'https://httpbin.org/anything'
    * form field items = 'item1'
    * form field items = 'item2'
    * method post
    

    【讨论】:

    • 谢谢彼得。你说的对。解决方法有效。 ;)
    • @pmpli 太棒了!如果可能,请接受答案
    猜你喜欢
    • 2019-06-07
    • 2020-06-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-09-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多