当提交大值时,casperjs empy POST数据

我有一个加载的表单,我只是简单地提交表单。 在表单中有inputtypes=隐藏字段,其中存有一些长string。 这在正常的浏览器上正常工作,不能用casper。 在分析这个,apache本身是从casper获得空的POST数据。 如果我减less隐藏的input数据,它工作正常。 是否有尺寸限制或casper中定义的东西?

以下是代码:

var casper = require('casper').create(); casper.start('http://localhost/loadForm', function() { // Wait for the page to be loaded this.waitForSelector('form[action="/saveConfig"]'); }); casper.then(function() { this.evaluate(function() { $('#form').submit(); }); }); casper.run(); 

下面的错误报告是帮助我的。 我认为这是一个幻影bug。 其中一个隐藏的字段是存储一个base64 PNG图像,并在我的HTML页面由canvas.toDataURL(“image / png”)填充。 这与casperjs相比,实际的浏览器产生了不同的base64。 这导致$ _POST在PHP中为空。 但是,当我尝试file_get_contents(“php://input”)的数据都存在。 我通过使用canvas.toDataURL(“image / png”,0)来解决它。 第二个参数在浏览器和casperjs中产生一致的输出。

https://github.com/ariya/phantomjs/issues/10455