参考社区问答https://cloud.tencent.com/developer/ask/96327

1.不建议改apache的配置

在Apache下,限制是一个可配置的值。如果想要支持更长的请求URI,请将此值更改为大于默认值8190的值。该值位于/etc/apache2/apache2.conf中。如果不是,请LimitRequestLine 10000在下添加一个新行()AccessFileName .htaccess。但是如果实际遇到此限制,可能会先滥用GET。你应该使用POST传输这种数据 - 尤其是因为你甚至承认你正在使用它来更新值。如果你检查上面的链接,你会注意到Apache甚至说:“在正常情况下,值不应该从默认值改变。”

2.主要在后端处理,前端改请求方法

基本上,区别在于GET请求具有一个字符串中的url和参数,然后发送null:

http.open("GET", url+"?"+params, true);
http.send(null);

而POST请求通过单独的命令发送url和参数:

http.open("POST", url, true);
http.send(params);

这是一个工作示例
ajaxPOST.html:

<html>
<head>
<script type="text/javascript">function ajaxPOSTTest() {try {// Opera 8.0+, Firefox, SafariajaxPOSTTestRequest = new XMLHttpRequest();} catch (e) {// Internet Explorer Browserstry {ajaxPOSTTestRequest = new ActiveXObject("Msxml2.XMLHTTP");} catch (e) {try {ajaxPOSTTestRequest = new ActiveXObject("Microsoft.XMLHTTP");} catch (e) {// Something went wrongalert("Your browser broke!");return false;}}}ajaxPOSTTestRequest.onreadystatechange = ajaxCalled_POSTTest;var url = "ajaxPOST.php";var params = "lorem=ipsum&name=binny";ajaxPOSTTestRequest.open("POST", url, true);ajaxPOSTTestRequest.setRequestHeader("Content-type", "application/x-www-form-urlencoded");ajaxPOSTTestRequest.send(params);}//Create a function that will receive data sent from the serverfunction ajaxCalled_POSTTest() {if (ajaxPOSTTestRequest.readyState == 4) {document.getElementById("output").innerHTML = ajaxPOSTTestRequest.responseText;}}
</script></head>
<body><button onclick="ajaxPOSTTest()">ajax POST Test</button><div id="output"></div>
</body>
</html>

ajaxPOST.php:

<?php$lorem=$_POST['lorem'];
print $lorem.'<br>';?>

解决HTTP 414“请求URI太长”的思路相关推荐

  1. ajax怎么解决报414,如何解决HTTP 414“请求URI太长”错误?

    根据约翰的回答,我将GET请求更改为POST请求.它可以工作,而无需更改服务器配置.所以我去寻找如何实现这一点.以下页面是有帮助的: 带有PHP的jQuery Ajax POST示例 (注意清理发布的 ...

  2. ajax怎么解决报414,关于c#:HTTP错误414。请求URL太长。 asp.net

    我收到错误" HTTP错误414.请求URL太长". 从下面的文章中,我了解到这是由于查询字符串很长所致: 在web.config中,我有maxQueryStringLength= ...

  3. 解决Springboot GET请求参数过长的情况

    项目场景: 使用Spring Boot进行项目开发,解决Springboot GET请求参数过长的情况 问题描述 报错信息:Springboot GET请求参数过长抛出异常:Request heade ...

  4. oracle导入提示字符过长,Oracle 解决【ORA-01704:字符串文字太长】

    错误提示:oracle在toad中执行一段sql语句时,出现错误'ORA-01704:字符串文字太长'.如下图: 原因:一般为包含有对CLOB字段的数据操作.如果CLOB字段的内容非常大的时候,会导致 ...

  5. 因网络不好导致请求时间太长问题的解决

    问题描述: 项目生产环境,网不太好,后台服务器返回的数据量又太大,请求开始会有一个遮罩,请求结束遮罩才会关闭,因为数据一直在接收中,导致这段时间内什么操作都做不了,只能杀死进程在重新进入.这里需要加一 ...

  6. elementui 表格表头换行_解决element-ui表格表头内容太长时的换行问题

    在用vue+element-ui做一个后台管理系统时,遇到这样的问题, 如图: 使用el-table做一个表格,当表头内容过长时会换行,在不设置的宽度的时候每一列的宽度是等比例分配的,虽然elemen ...

  7. 【实习】解决请求参数过长问题

    又要解决bug啦!!! 由于前端传过来的json数据过长导致请求参数太长,最后出现空指针异常. HTTP/1.1 414 Request-URI Too Large 解决方法: 参考:Java使用GZ ...

  8. ajax请求到参数太大获取参数失败问题,Ajax请求参数较长导致请求失败

    Ajax请求参数比较长,第5行参数大概1100个字符吧,是接口的请求报文. $.ajax({ type:"POST", url:"${ctx}/test.action?m ...

  9. 关于请求URL过长报414的问题

    关于请求URL过长报414的问题 问题如下: post请求携带超长url,报下图错误 解决: 1.涉及到参数特别多,然后对参数值安全性又有一定的要求,那么就需要考虑:对字符串加密JS加密url生成已加 ...

最新文章

  1. 国内操作系统OS分析(上)
  2. BZOJ4551: [Tjoi2016Heoi2016]树
  3. 10-20国际电极标准系统
  4. springMvc解决json中文乱码
  5. JavaScript MVC之Jamal
  6. 叫板BBC!80后湖南姑娘,花3年首次拍出水下的中国,惊艳了全世界
  7. python打印一个对象的所有属性_python打印出所有的对象/模块的属性代码详解
  8. [转] PHP之soap: soap使用例子
  9. 第二章:用Python对不同的商品销售数据进行预测分析
  10. crtlc不能复制文件_win10系统按ctrl+c快捷键无法复制文件的操作方法
  11. 筛选过的 Code rule
  12. Caused by: redis.clients.jedis.exceptions.JedisConnectionException: JedisPubSub was not subscribed t
  13. ch9200 usb网卡驱动_21包邮的PCMCIA无线网卡开箱+对比测评
  14. SAE助力南瓜电影7天内全面Severless
  15. 浅谈智能家居安防监控的重要性
  16. window系统cmd的常用几条指令
  17. mLife | 朱永官院士提出生态系统微生物组学
  18. java float四舍五入保留两位小数_java基础入门-float四舍五入保留两位小数注意的地方...
  19. 计算机英语广播,计算机专业英语词汇7-英语文章阅读-大耳朵英语 - 免费在线英语学习 口语练习 四级听力资料 在线翻译 网络课堂 英语社区...
  20. Galera:多主同步MySQL集群原理解析

热门文章

  1. Newtonsoft.Json.dll
  2. Android 9.0更新
  3. Flask异步渲染管理后台局部页面
  4. 如何更改Linux系统的开机界面
  5. 利用教育邮箱注册JetBrains产品(pycharm、idea等)的方法
  6. 获取root权限及破解原理分析
  7. 基于Navicat管理工具实现以客户为导向的数据库基本操作
  8. k44.第十七章 K8s运维篇-DevOps 持续集成 持续部署 (四)
  9. point-wise element-wise
  10. python创业公司做什么最赚钱农村_最适合农村的创业项目,成本不超过500块,做好就能快速发家致富...