我無法用CasperJS下載從Web服務器的文件流:下載一個文件跨網域CasperJS
- 形式張貼到一個URL
- URL返回一個文件流
到目前爲止,我已驗證是否發佈了正確的表單值。
var casper = require('casper').create({
verbose: true,
logLevel: 'debug',
viewportSize: {width: 1440, height: 800},
pageSettings: {
userName: '****',
password: '****',
webSecurityEnabled: false
},
waitTimeout: 200000
});
casper.start("***");
casper.then(function() {
var exportForm = this.evaluate(function() {
return $("#export_pdf_form").serialize();
});
var exportAction = this.evaluate(function() {
return $("#export_pdf_form").attr('action');
});
var url, file;
url = '***' + exportAction; (eg. https://webserver/export)
file = "export.pdf";
casper.page.settings.webSecurityEnabled = false;
casper.download(url, fs.workingDirectory + '/' + file, "POST", exportForm);
});
卡斯帕錯誤「不幸的是casperjs不能讓跨域Ajax請求」,其次是「XMLHttpRequest的異常101」。搜索後指出,將Web安全變量設置爲false應該可以實現這個功能......但事實並非如此。還有什麼我應該看看?
casperjs - V1.1.1 phantomjs - V2.0.0
面對同樣的問題,你最終得到一個解決方法? webSecurityEnabled也不適用於我。 – Sam
@Sam nope暫時放棄了 –
@Sam我終於得到了這個工作...通過更新到PhantomJS 2.1 –