【问题标题】:Kraken modify headers between backendsKraken 修改后端之间的标头
【发布时间】:2022-12-09 21:35:09
【问题描述】:

我有一个带有两个后端的端点。我的目标是读取第一个后端的响应并将一些标头放入第二个(以及所有以后的)后端。 我尝试使用modifier/lua-backend

我最后一次尝试以这个结束(第一个端点的后步骤)

local resp = response.load();
local respData = resp:data();
local x_user = respData:get('user_id');
local x_org = respData:get('org_id');
local req = request.load();
req:headers('x-user', x_user);
req:headers('x-org', x_org);

但第二个端点从未获得这些标头。 (我已将 x-userx-org 添加到 input_headers 列表中)。

我是否遗漏了有关此操作范围的信息? modifier/lua-proxy 似乎在所有后端之前(如前)工作一次,在所有后端之后(如后)工作一次。

我怎样才能做到这一点,或者这甚至可能吗?

【问题讨论】:

    标签: lua krakend


    【解决方案1】:

    如果你使用 lua-endpoint 它可以工作,至少它对我有用。这样的事情应该适合你。

    "input_headers": [
        "Accept",
        "new"
    ],
    "extra_config": {
        "modifier/lua-endpoint": {
            "allow_open_libs": true,
            "pre": "local c = ctx.load(); c:headers('new',c:headers('original'));"
        }
    }
    

    注意:它写在端点上而不是代理的端点上

    【讨论】:

      猜你喜欢
      • 2012-05-16
      • 1970-01-01
      • 1970-01-01
      • 2011-02-15
      • 2011-10-21
      • 1970-01-01
      • 2015-01-23
      • 1970-01-01
      相关资源
      最近更新 更多