AWS API 使用 Javascript 签署的 POST 请求
AWS API signed POST request with Javascript
我想做什么:最终:我想从浏览器扩展程序(Safari、Chrome)填充 AWS Kinesis 流。我需要使用签名流程 (v4) 将请求发送到 AWS;这涉及设置标头并加密它们(在具有 AWS 私有密钥的远程服务器上),以最终将这些标头加入请求。
亚马逊请求显式定义标头"主机"...但是Javascript严格禁止设置它(以及一堆其他的,有充分的理由)
我一定错过了什么——我该怎么做?
来源:http://docs.aws.amazon.com/general/latest/gr/sigv4-signed-request-examples.html - 该示例在 Python 中,但它显示了他们打算如何使用 Host 标头的服务器端
注意:我目前正在使用 POST;该示例描述 GET 和查询字符串的注释也提到了"Host":它必须作为请求中的标头存在
另外:使用类似的设置,我设法将文件从客户端直接上传到 S3 存储桶——自动化过程略有不同(不需要"主机")。
当您执行 JS XHR 本身时,Host:
标头由给定的 URL 填充和解析,与 curl
相同,例如
curl -v -X POST http://example.org/foo
。将自动添加标题Host: example.org
...
对于 AWS,您仍需要将其添加到canonical_headers
列表中以进行签名(并且全部为小写),如链接示例中所述。不过,这部分与实际建立连接无关。
相关文章:
- 当我在form_for中的text_field_tag中点击Enter时,如何禁止发出POST请求
- 为什么 AJAX POST 请求不起作用
- Ajax POST请求没有'我不了解PHP
- 防止双击执行两次jQuery post请求
- Javascript XMLHttpRequest——只有第一个POST请求有效
- 如何使用Javascript获取POST请求填充的元素的值
- NodeJS中POST请求的请求体为null
- 在Fiddler JavaScript中识别POST请求
- 使用application/x-www-form-urlencoded使用node.js在post请求中发送数组
- 打开一个选项卡,并在firefox网络扩展中向其发出POST请求
- 通过AJAX向同一页面发送POST请求,并使用$_POST获取值
- Ajax Post请求不起作用
- 如何在cloud9中向server.js发送post请求
- mootools表单json post请求
- 可以'无法在CasperJS中复制POST请求
- 使用用户名/API令牌javascript的Jenkins POST请求
- 在表单上注入javascript以发送post请求
- 使用javascript在post请求中传递用户输入变量
- 如何使用javascript进行post请求
- 如何在Javascript中通过POST请求发送XML数据