首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在asp.net中传递和获取过长的查询字符串

在asp.net中传递和获取过长的查询字符串
EN

Stack Overflow用户
提问于 2011-07-15 20:37:29
回答 3查看 4.3K关注 0票数 1

我集成了一个软件,他们将他们的文档发送到我的url,查询字符串值太大。即一个参数超过75000个字符。我正处于研发阶段,以检查集成是否有效。我知道浏览器会限制查询字符串。我想把他们的文档放到我的服务器上。我在谷歌上搜索,但没有得到答案。该url的格式如下:

代码语言:javascript
运行
复制
Http:\\myurl?document=thierdocument in base64 encoded format

指导我克服这个问题

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2011-07-15 20:40:46

这是行不通的。根据浏览器的不同,查询字符串限制在几千个字符以内(即2083 characters for IE)。改为使用HTTP POST,并将二进制格式的文档放入请求正文中。

网址的主要思想是成为统一资源定位器,而不是将所有数据作为网址本身的一部分进行传递。您不能绕过浏览器对URL的限制(可以说您也不应该这样做)--另一种方法是以数字或Guid的形式传递文档id,然后查找该文档以将其作为页面的一部分进行处理。

票数 4
EN

Stack Overflow用户

发布于 2011-07-15 20:39:49

我的建议是将数据从查询字符串移动到post表单。

我的建议是将数据从查询字符串移动到post表单。

为什么?

一个原因是url数据,包括你的大字符串,被用来知道页面是否会被浏览器缓存。所以我认为浏览器他自己有一个问题,记住这个大字符串。

另一个原因是,这个url是按原样移动的,是一个很大的url,并且很可能无法到达目标。

IE中的2083个字符我认为只在URL上引用,而不是在包含的数据上引用。

票数 2
EN

Stack Overflow用户

发布于 2011-07-15 20:53:10

您将不得不使用POST query来执行此操作。

摘自What is the limit on QueryString / GET / URL parameters?

网址长度的规范并没有规定最小或最大网址长度,但实现方式因浏览器而异。在视窗系统上: Opera支持大约4050个字符,IE 4.0+支持2083个字符,Netscape 3 -> 4.78支持最多8192个字符,然后在关机时导致错误,Netscape 6支持大约2000个字符,然后在启动时导致错误。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6707044

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档