gpt4 book ai didi

c - 在另一个字符集中对奇怪的字符进行 Urlen 编码

转载 作者:行者123 更新时间:2023-11-30 15:29:40 27 4
gpt4 key购买 nike

我正在学习 C,并且正在使用 libcURL 发送 POST 请求来登录网站。
我偶然发现一个问题,我的密码包含 ü性格。
从浏览器读取 POST 请求,我可以看到它被编码为 %FC .
但是,当使用curl_easy_escape()时为了对其进行编码,它编码为 %C3%BC .

我去搜索了一下,发现是不同的编码。我认为 ISO,因为该页面有这个元:<meta content="text/html; charset=ISO-8859-1" http-equiv="content-type">
但是,我不知道如何以某种方式转换它。

现在,我将如何进行 urlencoding ü%FC

最佳答案

使用非 UTF-8 编码进行 POST 是一团糟,而且浏览器之间的行为实际上差异很大,因此这样做被认为是非常糟糕的做法。但既然你被困在一个这样的网站上,你就必须解决它。

我找不到用于使用备用字符集进行百分比编码的curl api,因此您可能必须自己执行此操作(首先使用 iconv 从系统的 native 编码进行转换,希望是UTF-8,为 ISO-8859-1 (Latin-1),然后手动进行百分比编码)。

一个想法 - 你确定你应该自己进行转义吗?我的印象是,它仅适用于 URL,并且用于 POST 表单的curl API 可能已经在内部进行转义(不确定),在这种情况下,您可能只需要告诉它正确的内容类型。

关于c - 在另一个字符集中对奇怪的字符进行 Urlen 编码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26123373/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com