Bazı base64 dizileri var ve bunları sunucuya aktarmak ve png dosyalarını kaydetmek istiyorum. javascriptJavascript post JSON verileri kullanarak, ancak JSON PHP'de tamamlanmamış
Benim formu şuna benzer:
var $form = $("#downloadForm");
if ($form.length == 0) {
$form = $("<form>").attr({ "target": "_blank", "id": "downloadForm",
"method": "POST", "action": "keyword-cmp-download" }).hide();
$("body").append($form);
}
$form.find("input").remove();
var args = {'imgs': JSON.stringify(base64_list)};
console.log(JSON.stringify(base64_list));
for (var field in args) {
$form.append($("<input>").attr({"value":args[field], "name":field}));
}
$form.submit();
Ve php
, kod şöyle görünür:$json = Input::get('imgs'); // $json = __POST('imgs');
return $json;
Ancak PHP döndürülen $json
JSON.stringify(base64_list)
'un bir parçasıdır. Ben
json_decode($json)
aramaya çalıştığımda,
json_last_error()
ben
httpd.conf
içinde
php.ini
ve
LimitRequestBody 2147483647
yılında
post_max_size = 2048M
belirledik 4.
hata kodu döndürür.
Lütfen sorunu çözmemde bana yardımcı olun, çok teşekkürler.
Güncelleme: JSON.stringify(base64_list).length
döner 769.283 ama <textarea>
değişikliğin <input>
tarafından çözüldü strlen($json)
döner 524288
ben 'args' nesnenin noktası olduğunu ne olduğundan emin değilim hepsi, sadece tek bir özelliğini' json dize – andrew
kodlanmış edileceği imgs' "$ üzerinde durmak Lütfen içerecektir json PHP'de döndü tamamlanmadı ". – Sammitch
"PHP'de döndürülen $ json tamamlanmadı": Örneğin, 'console.log'un (JSON.stringify (base64_list)) sonucu' '' ['abcdefghijklmn'] ',' 'json'' gibi bir şeydir '' [abcdefghijkl''. Base64 dizesi çok uzun olduğundan, javascript post veya php sınırı olup olmadığı konusunda şüphem var mı? – wzpfish