【问题标题】:Encoding issue with superagent超级代理的编码问题
【发布时间】:2013-05-21 06:22:10
【问题描述】:

我正在尝试使用 superagent 执行 API 调用,但它对我的 api 密钥进行了编码,但被拒绝了。

get(url).query({ key: 'Fmjtd%7Cluu').end(function(err, res) {

密钥被发送为

Fmjtd%257Cluu

任何想法如何使用超级代理来防止这种情况?如果我将它作为“url”部分的一部分,那很好,但如果可能的话,我想将它作为查询数据传递。

【问题讨论】:

    标签: javascript node.js superagent


    【解决方案1】:

    我不熟悉 SuperAgent,但这里是我可以用来解决问题的选项。

    1. 转义键。试试 'Fmjtd\%7Cluu'

    2. 由于 SuperAgent 似乎正在应用“encodeURIComponent”来转换密钥以使其对 http 传输安全,因此您可以在传递它之前先“decodeURIComponent”它。但是,这很可能会破坏 SuperAgent(因为他们可能有充分的理由首先对 URI 组件进行编码)。

    3. 发送错误报告并让维护人员创建一个适当的修复程序,而不是我上面建议的黑客攻击

    【讨论】:

      猜你喜欢
      • 2020-04-30
      • 1970-01-01
      • 2019-01-08
      • 2021-11-08
      • 1970-01-01
      • 2011-03-28
      • 2018-07-14
      • 1970-01-01
      • 2015-10-19
      相关资源
      最近更新 更多