如何更改AWS节点客户端用户代理?

时间:2017-04-07 12:40:18

标签: node.js aws-sdk

我使用节点aws-sdk包,我需要在S3请求中发送自定义用户代理,以便在控制台日志中标识该进程。

我已经在Java SDK中看到了一种方法,但我在节点包中看不到任何相似的内容。

有没有办法轻松做到这一点?

2 个答案:

答案 0 :(得分:2)

在浏览源代码后,我找到了一个未记录的选项来设置用户代理:customUserAgent

const options = { customUserAgent: 'my-process-name' };
const client  = new AWS.S3(options);

答案 1 :(得分:0)

您可以根据here发送给构造函数的httpoptions options字段中定义代理:

  

httpOptions(map) - 一组传递给低级HTTP请求的选项。

     

目前支持的选项包括:

     
      
  • proxy [String] - 通过

  • 代理请求的URL   
  • agent [http.Agent,https.Agent] - 用于执行HTTP请求的Agent对象。用于连接池。对于非SSL连接,默认为全局代理(http.globalAgent)。请注意,对于SSL连接,将使用特殊的代理对象以启用对等证书验证。此功能仅在Node.js环境中可用。

  •   
  • connectTimeout [Integer] - 在connectTimeout毫秒之后无法与服务器建立连接后,将套接字设置为超时。一旦建立套接字连接,此超时无效。

  •   
  • timeout [Integer] - 在套接字上的超时毫秒不活动后将套接字设置为超时。默认为两分钟(120000)。

  •   
  • xhrAsync [Boolean] - SDK是否会发送异步HTTP请求。仅在浏览器环境中使用。设置为false以同步发送请求。默认为true(async on)。

  •   

这就是你要找的东西吗?