bom*_*tic 17 javascript ajax jquery post
我需要POST一个大约3mb的巨大字符串,是否可以使用not url params将其发送到php?
如果我用url params发送它,请求达到url的大小限制.
如何解决这个问题?任何线索?
非常感谢.
其实我是这样做的:
$.ajax({
type:'POST',
.......
data:{string:3MB_string}
});
Run Code Online (Sandbox Code Playgroud)
我正在使用PHP和jQuery,我想在一个简单的URL上发送3mb base64字符串给php,就像 site.com/script.php
该字符串是File Reader API base64图像
这是一个字符串的例子,但这不会达到大小限制它不是3mb更少引起麻烦的粘贴,以显示你3mb,http://jsfiddle.net/QSyMc/
Dar*_*rov 28
您需要使用POST请求:
$.ajax({
url: '/script.php',
type: 'POST',
data: { value: 'some huge string here' },
success: function(result) {
alert('the request was successfully sent to the server');
}
});
Run Code Online (Sandbox Code Playgroud)
并在您的服务器端脚本中检索值:
$_POST["value"]
Run Code Online (Sandbox Code Playgroud)
您还可能需要增加允许的请求大小.例如,在您的.htaccess
文件或您的文件中,您php.ini
可以设置post_max_size
值:
#set max post size
php_value post_max_size 20M
Run Code Online (Sandbox Code Playgroud)
kra*_*dio 10
尝试使用processData
false和JSON的字符串表示
var data = { "some" : "data" };
$.ajax({
type: "POST",
url: "/script",
processData: false,
contentType: 'application/json',
data: JSON.stringify(data),
success: function(r) {
console.log(r);
}
});
Run Code Online (Sandbox Code Playgroud)
从jQuery.ajax文档:
processData(默认值:true)
类型:布尔值
默认情况下,作为对象传入数据选项的数据(技术上,不是字符串)将被处理并转换为查询字符串,适合默认内容类型"application/x-www-form-urlencoded" .如果要发送DOMDocument或其他未处理的数据,请将此选项设置为false.
归档时间: |
|
查看次数: |
77467 次 |
最近记录: |