如何通过api网关将授权承载令牌传递给非授权者lambda函数?

时间:2020-05-10 14:11:50

标签: node.js aws-lambda aws-api-gateway

我有一个节点lambda函数,我想解码和读取jwt的有效负载。我创建了一个启用了lambda代理集成的get方法,并且只将授权承载令牌传递给端点。当我这样做时,event完全是空的。如何将jwt传递给lambda函数?

1 个答案:

答案 0 :(得分:0)

如果您返回事件并且它是空的,那么听起来好像是某种类型的配置没有正确设置,而不是没有传递授权标头。

根据 docs,代理集成需要以下格式的 lambda 输出:

import numpy as np

def convert_to_int(state):
    a = 0
    for num in state.reshape(9):
        a = a + num
        a = a << 2
    return a
    
def convert_state_to_numpy(state):
    cells = []
    for i in range(9) :
        state >>= 2
        cells.insert(0,(3 & state))
     
    return np.array(cells).reshape((3,3))

input_state = np.array((
    (1, 2, 1),
    (0, 0, 0),
    (0, 0, 0)),
    dtype="int32")

state_as_int = convert_to_int(input_state)
output_state = convert_state_to_numpy(state_as_int)

print(hex(state_as_int))
print(output_state)

确保您的 Lambda 返回类似的输出。