我正在使用有时可能包含俄语符号的动态 URL 创建 HttpWebRequest。 有时我会遇到一个我不确定如何处理的问题:在编码为 URL 时,每个 RU 字符都已转换为 URL 字符实体等价物 (%20...)。显然,在这样的转换 URL 变得太长之后,HttpWebRequest 截断了最后几个字符,所以我得到的不是正确的 HTTP 结果,而是 404 错误。
有什么办法可以绕过这个限制吗?
我的网址是这样的:
http:\\1.1.1.1\some?page=2&var=тестовое значение строки (this part can be very long)
我将此作为 GET 发送,因为我正在使用的 Web 应用此时需要 GET 请求。
最佳答案
唯一的答案是您必须以任何其他方式发送它,因为查询字符串的长度有限制。
错误 404 或“HTTP 错误 414。请求 URL 太长。”你会得到只是因为查询字符串的长度,因为你发送的数据比限制长。
关于c# - HttpWebRequest 截断带有非英文符号的 URL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10931465/