【问题标题】:How does this URL encoding work?这个 URL 编码是如何工作的?
【发布时间】:2015-01-30 07:22:04
【问题描述】:

我正在尝试向服务器创建 HTTP 发布请求。部分post参数是德国电影片名如

 Cowboys & Aliens

 Das süße Leben

当我的浏览器发布请求时,将发布为

 Cowboys+%26+Aliens

 Das+s%FC%DFe+Leben

我不知道这是什么类型的编码,以及如何在 perl 中重现它。

有人可以帮忙吗?

【问题讨论】:

  • 它叫URL encoding,可以使用this模块。这花了我整整 10 秒的谷歌搜索,下次先试试。
  • @Biffen,对不起,如果我没有说清楚,但我一直在使用 URI::Escape,并且之前用谷歌搜索过 - 这是基本的礼仪。我从这里开始stackoverflow.com/questions/13163937/decode-utf-8-url-in-perl,但努力寻找一种方法来一致地编码/解码两个字符串
  • 您应该在问题中提到这一点。那么,您目前的问题是什么?
  • 这只是一个猜测,但是第二个字符串在 Perl 文件中的编码方式是否存在问题?字符 ß 在 ISO 88591-1 中编码为 0xDF,但在 UTF-8 中编码为 0xC3 0x9F。也许问题可能是字节被转义,即。到 %C3%9F 而不是 UTF-8 代码点被映射回 ISO 8859-1 并表示为 %DF?
  • Biffen 链接到的 CPAN 文档讨论了保留字符,例如'&' 仅在您明确要求时才被编码 - 这是您需要查看的潜在问题吗?

标签: perl encoding uri


【解决方案1】:

使用URI::Encode 这将为您完成这项工作。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-01-01
    • 1970-01-01
    • 2010-12-13
    • 2013-04-23
    • 2015-04-09
    • 2013-07-24
    • 2014-03-26
    • 2012-11-14
    相关资源
    最近更新 更多