我正在攻击node.js程序,该程序捕获SMTP邮件并对邮件数据进行操作.'smtp-protocol'节点库以流形式提供邮件数据,作为node.js新手,我不知道如何将该流写入字符串变量.我目前使用该行写入stdout:
__PRE__
正如我所说,我需要将此流数据写入字符串变量,然后在流结束后我将使用它.
非常感谢!
完整代码,请访问https://gist.github.com/992562.
我正在使用HTML文件API并拖放以通过XHR帖子将文件上传到PHP脚本.从程序上看,一切似乎都运行正常,但是当我尝试打开上传的文件时,任何非文本文件都比源文件大得多,并且不会打开.它显然与源磁盘上的数据不同.但是,文本文件完全相同,打开就好了.
关于3文件拖放上传的一些示例:文件1:文本/ XML:在磁盘上13 KB,上传13 KB,完美地工作文件2:image/PNG:在磁盘上14 KB,上传18 KB,将无法打开文件3:application/XLSX:磁盘12 KB,上传14 KB,无法打开
这一切归结为此(在设置xhr标题后,文件对象准备就绪等):
var reader = new FileReader();
reader.onload = function(evt) {
xhr.send(evt.target.result)
}
reader.readAsBinaryString(f);
Run Code Online (Sandbox Code Playgroud)
返回大而不好的数据.它有什么明显的错误吗?
我正在尝试实现一个拖放上传器,当拖动文件拖入窗口时,该拖放标记带有覆盖区域(dropzone内部100%宽度/高度绝对元素,静态时看起来很棒)的dropzone,并在删除时删除该标记文件离开窗口或丢弃在dropzone之外.
问题在于,当文件被拖入窗口时,dragover和dragleave事件就像疯了一样激发,因此叠加层就像疯了一样闪烁.
window.addEventListener('dragover', handleDrag, false);
window.addEventListener('dragleave', handleStop, false);
window.addEventListener('drop', handleStop, false);
dropzone.addEventListener('drop', handleUpload, false);
function handleDrag(event) {
// Stop normal browser response.
event.stopPropagation();
event.preventDefault();
if (!window.mysettings.dragging) {
window.mysettings.dragging = true;
$('#dropzone').prepend('<div class="overlay">HELLO</div>');
}
}
function handleStop(event) {
// Stop normal browser response.
event.stopPropagation();
event.preventDefault();
if (window.mysettings.dragging) {
window.mysettings.dragging = false;
$('#dropzone .overlay').remove();
}
}
function handleUpload(event) {
// Stop normal browser response.
event.stopPropagation();
event.preventDefault();
if (window.mysettings.dragging) {
window.mysettings.dragging = false;
$('#dropzone .overlay').remove();
}
// DO MY FILE UPLOAD STUFF HERE …Run Code Online (Sandbox Code Playgroud)