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

ajax怎么解决报414,如何解决HTTP 414“请求URI太长”错误?根据约翰的回答,我将GET请求更改为POST请求。它可以工作,而无需更改服务器配置。所以我去寻找如何实现这一点。以下页面是有帮助的:带有PHP的jQueryAjaxPOST示例(注意清理发布的数据注释)和http://www.openjs.com/articles/ajax_xmlhttp_using_post.php基本上,区别在于GET请求在一个字符串中包含url和参数,然后发送null…

大家好,又见面了,我是你们的朋友全栈君。

根据约翰的回答,我将GET请求更改为POST请求。它可以工作,而无需更改服务器配置。所以我去寻找如何实现这一点。以下页面是有帮助的:

带有PHP的jQuery Ajax POST示例 (注意清理发布的数据注释)和

http://www.openjs.com/articles/ajax_xmlhttp_using_post.php

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

http.open(“GET”, url+”?”+params, true);

http.send(null);

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

http.open(“POST”, url, true);

http.send(params);

这是一个工作示例:

ajaxPOST.html:

function ajaxPOSTTest() {

try {

// Opera 8.0+, Firefox, Safari

ajaxPOSTTestRequest = new XMLHttpRequest();

} catch (e) {

// Internet Explorer Browsers

try {

ajaxPOSTTestRequest = new ActiveXObject(“Msxml2.XMLHTTP”);

} catch (e) {

try {

ajaxPOSTTestRequest = new ActiveXObject(“Microsoft.XMLHTTP”);

} catch (e) {

// Something went wrong

alert(“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 server

function ajaxCalled_POSTTest() {

if (ajaxPOSTTestRequest.readyState == 4) {

document.getElementById(“output”).innerHTML = ajaxPOSTTestRequest.responseText;

}

}

ajax POST Test

ajaxPOST.php:

$lorem=$_POST[‘lorem’];

print $lorem.’
‘;

?>

我刚发送了12,000个字符,没有任何问题。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/138544.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • ideavim怎么用_intellij idea使用教程2020

    ideavim怎么用_intellij idea使用教程2020IdeaVim-常用操作IdeaVim简介IdeaVim是IntelliJIDEA的一款插件,他提高了我们写代码的速度,对代码的跳转,查找也很友好。安装之后它在Tools>VimEmulator具体操作i模式i模式即为编辑模式,按下字母i开启就可以打字。Esc从i模式切换为Vim,按下键盘的Esc键切

    2022年9月30日
    0
  • 声源定位系统设计(一)——MVDR波束形成算法「建议收藏」

    声源定位系统设计(一)——MVDR波束形成算法「建议收藏」本篇博客希望通过通俗的方式讲清一些简单经典声源定位的方法,并能够按照这种方法自制一个声源定位系统。

    2022年9月22日
    0
  • BoundsChecker 使用方法[通俗易懂]

    1前言我在本文中详细介绍了测试工具NuMegaDevpartner(以下简称NuMega)的使用方法。NuMega是一个动态测试工具,主要应用于白盒测试。该工具的特点是学习简单、使用方便、功能有效。NuMega共有三个独立的子功能——BoundsChecker、TrueCoverage、TrueTime。BoundsChecker为代码检错工具,TrueCoverage为测试覆盖率统计…

    2022年4月8日
    55
  • 按位取反~运算_按位与按位或按位异或运算符

    按位取反~运算_按位与按位或按位异或运算符按位取反~运算首先我们来看按位取反的概念按位取反运算符:对数据的每个二进制位取反,即把0变成1,把1变成0.即~x=-x-1这里按照定义9的二进制为00001001其按位取反为11110110结果为-10这个过程没有任何问题,但是如果忘记了负数的二进制表达方式,就会对这个结果产生疑问,为什么11110110表示-10而不是503?理解按位取反的关键是理解11110110为什么表示-10,也就是负数的二进制表达方式。现在计算机普遍使用补码表示负数。知道补码,求源码的方式是:值取反再加1。

    2022年8月14日
    6
  • anaconda安装tensorflow后pip安装jieba出错的问题

    anaconda安装tensorflow后pip安装jieba出错的问题

    2021年11月19日
    54
  • 几种ARM编译器及IDE开发环境[通俗易懂]

    几种ARM编译器及IDE开发环境[通俗易懂]ARM应用软件的开发工具根据功能的不同,分别有编译软件、汇编软件、链接软件、调试软件、嵌入式实时操作系统、函数库、评估板、JTAG仿真器、在线仿真器等,目前世界上约有四十多家公司提供以上不同类别的产品。  用户选用ARM处理器开发嵌入式系统时,选择合适的开发工具可以加快开发进度,节省开发成本。因此一套含有编辑软件、编译软件、汇编软件、链接软件、调试软件、工程管理及函数库的集成开发环境(IDE…

    2022年6月1日
    164

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号