无法验证Line Bot(Python)的X-Line签名
我正在尝试使用AWSAPI网关和AWS Lambda作为webhook实现一个LINE bot。我能够成功连接webhook。现在,我试图验证来自行请求头的X-Line签名,但我无法这样做 这是我的密码:无法验证Line Bot(Python)的X-Line签名,python,aws-lambda,Python,Aws Lambda,我正在尝试使用AWSAPI网关和AWS Lambda作为webhook实现一个LINE bot。我能够成功连接webhook。现在,我试图验证来自行请求头的X-Line签名,但我无法这样做 这是我的密码: def lambda_handler(event, context): channel_secret = 'XXXXXXXXXXXX' headers = event['headers'] header_signature = headers['X-Line-Sig
def lambda_handler(event, context):
channel_secret = 'XXXXXXXXXXXX'
headers = event['headers']
header_signature = headers['X-Line-Signature']
body = json.dumps(event['body'])
hash = hmac.new(
channel_secret.encode('utf-8'),
body.encode('utf-8'),
hashlib.sha256
).digest()
signature = base64.b64encode(hash)
print (header_signature, signature)
我好像找不到匹配的签名
我还尝试使用line-bot python sdk包,但没有成功(取自此链接:[]):
任何帮助或建议都将不胜感激
def lambda_handler(event, context):
from linebot import WebhookHandler
from linebot.exceptions import InvalidSignatureError
handler = WebhookHandler('XXXXXXXXXXXXXXXXXX')
headers = event['headers']
header_signature = headers['X-Line-Signature']
body = json.dumps(event['body'])
try:
handler.handle(body, header_signature)
print('Succeeded')
except InvalidSignatureError:
print('Signature Failed')