当存在请求正文时,如何在空手道中集中设置一个“内容类型”而不将其覆盖为“ application / json”?

时间:2018-08-21 20:26:13

标签: karate

每个功能文件的背景中都有一个* configure headers = read('classpath:configure-headers.js')

configure-header.js如下:

function() {
    var out = {'Some-Header-We-Need': 'value'};
    var authToken = karate.get('authToken');
    if(authToken) {
        out['Authorization'] = 'Bearer ' + authToken;
        out['Content-Type'] = 'application/vnd.mycompany+json';
    }
    return out;
}

这些标头总是出现在我期望的位置,除了在制作PUTPATCHPOST时,Content-Type标头被设置为{{1} }。我可以通过在通话前设置标题来获取所需的标题,例如

application/json

该怎么做才能不必到处重写此标头?

1 个答案:

答案 0 :(得分:1)

哇,您实际上确实发现了空手道中的一个漏洞,该漏洞很长时间未被发现。谢谢!

我在这里打开了一个问题,该修复程序位于developer分支:https://github.com/intuit/karate/issues/510

希望您可以通过变通办法管理一小会儿。如果紧急,我们可以发布补丁程序版本。