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)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

发表回复

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

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