我试图看看如何从lambda代码中访问请求标头和正文值.如果请求主体是JSON格式,它似乎会自动解析并在事件对象中可用.
如何在Lambda中访问任何类型的传入"Content-Type"请求的完整查询字符串,请求正文,请求标头(cookie)?
以下编辑是我收集的信息,以帮助解决可能相关或不相关的问题.如果你愿意,请忽略它们.
编辑:
我在这里和这里详细介绍了SE的现有问题.按照这个线程,使用$input.json('$')应该做的伎俩.我猜上面这些链接的答案已经过时,因为默认情况下API网关似乎在请求中识别JSON,如果是这样,它在event对象中可用,而不配置任何映射模板.
按建议设置映射对我不起作用.它不包含请求标头信息.
以下是有关如何配置的屏幕截图.
"headers"键返回一个空值.使用$input.params('$')或"$input.params('$')"错误输出.
编辑2
尝试在方法请求中定义标头.仍然没有在lambda中获取User-Agent值.
编辑3
我在API网关上使用了以下模板映射
{
"request": $input.json('$'),
"headers": "$input.params()"
}
Run Code Online (Sandbox Code Playgroud)
以及lambda中的以下代码
context.succeed("event.key32:"+JSON.stringify(event, null, 2) );
Run Code Online (Sandbox Code Playgroud)
查看响应中的"标题"值,看起来AWS-SDK/API网关/ cloudfront剥离了从HTTP客户端收到的所有标头?以下是$ input.params().标头返回的JSON的全文
header={CloudFront-Forwarded-Proto=https, CloudFront-Is-Desktop-Viewer=true, CloudFront-Is-Mobile-Viewer=false, CloudFront-Is-SmartTV-Viewer=false, CloudFront-Is-Tablet-Viewer=false, Content-Type=application/json, Via=1.1 5d53b9570d94ce920abbd471.cloudfront.net (CloudFront), 1.1 95eea7baa7ec95c9a41eca9e3ab7.cloudfront.net (CloudFront), X-Amz-Cf-Id=GBqmObLRy6Iem9bJbVPrrW1K3YoWRDyAaMpv-UkshfCsHAA==, X-Forwarded-For=172.35.96.199, 51.139.183.101, X-Forwarded-Port=443, X-Forwarded-Proto=https}}
Run Code Online (Sandbox Code Playgroud)
它在标头中没有User-Agent字符串,尽管如上面的屏幕截图所示,它是由REST客户端发送的.有趣的是,整个查询字符串可用.不确定这是否是访问它的预期方式.
我正在寻找为一组随机闭合贝塞尔形状生成斜角/浮雕效果的方法。我发现以下帖子似乎符合我的要求。
https://dsp.stackexchange.com/questions/530/bitmap-alpha-bevel-algorithm
我如何将其移植到 C# ?有没有我可以使用的算法?或者是否有任何 .NET 成像库可供使用或一些代码片段可以帮助我开始?
我需要在服务器上运行此代码以生成周围具有透明度的动态形状。
显然有捕获网页截图的解决方案:
Snapabug使用applet工作
GrabzIt我想这是在服务器端完成的.
Webkit2png是一个命令行工具,因此不是浏览器代码的真正部分.
可能还有其他使用ActiveX的解决方案.
但我对仅使用Javascript的解决方案感兴趣.根据我的理解,html2canvas和rasterizeHTML.js都允许将html(在网页中)转换为图像.那么,html2canvas与rasterizehtml.js的实现方式有何不同?根据我的理解,他们似乎都使用Canvas来生成结果.那么它们有什么不同呢?哪一个更好 ?