96编辑器旗下产品
找图
终身
ID:0
到期时间:永久
退出登录
您的位置:首页 > 百科管理 > 详情

node实现图片上传-最近在研究nodejs如何实现文件上传功能

原创:找图网 2023-05-03 04:56:06
  • 如何使用 NodeJS 将文件或图像上传到服务器

  • 下面先介绍上传文件到服务器(多文件上传):

    import .*;

    import .*;

    import .*;

    import .*;

    import .*;

    import .*;

    public class upload extends HttpServlet {

    private static final String CONTENT_TYPE = "text/html; charset=GB2312";

    //Process the HTTP Post request

    public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

    (CONTENT_TYPE);

    PrintWriter out=();

    try {

    DiskFileUpload fu = new DiskFileUpload();

    // 设置允许用户上传文件大小,单位:字节,这里设为2m

    (2*1024*1024);

    // 设置最多只允许在内存中存储的数据,单位:字节

    (4096);

    // 设置一旦文件大小超过getSizeThreshold()的值时数据存放在硬盘的目录

    ("c://windows//temp");

    //开始读取上传信息

    List fileItems = (request);

    // 依次处理每个上传的文件

    Iterator iter = ();

    //正则匹配,过滤路径取文件名

    String regExp=".+////(.+)$";

    //过滤掉的文件类型

    String[] errorType={".exe",".com",".cgi",".asp"};

    Pattern p = (regExp);

    while (()) {

    FileItem item = (FileItem)();

    //忽略其他不是文件域的所有表单信息

    if (!()) {

    String name = ();

    long size = ();

    if((name==null||("")) && size==0)

    continue;

    Matcher m = p.matcher(name);

    boolean result = m.find();

    if (result){

    for (int temp=0;temp<;TEMP++){

    if (m.group(1).endsWith(errorType[temp])){

    throw new IOException(name+": wrong type");

    }

    }

    try{

    //保存上传的文件到指定的目录

    //在下文中上传文件至数据库时,将对这里改写

    (new File("d://" + m.group(1)));

    (name+" "+size+"");

    }

    catch(Exception e){

    (e);

    }

    }

    else

    {

    throw new IOException("fail to upload");

    }

    }

    }

    }

    catch (IOException e){

    (e);

    }

    catch (FileUploadException e){

    (e);

    }

    }

    }

    现在介绍上传文件到服务器,下面只写出相关代码:

    以sql2000为例,表结构如下:

    字段名:name filecode

    类型: varchar image

    数据库插入代码为:PreparedStatement pstmt=("insert into test values(?,?)");

    代码如下:

    。。。。。。

    try{

    这段代码如果不去掉,将一同写入到服务器中

    //(new File("d://" + m.group(1)));

    int byteread=0;

    //读取输入流,也就是上传的文件内容

    InputStream inStream=();

    (1,m.group(1));

    (2,inStream,(int)size);

    ();

    ();

    (name+" "+size+" ");

    }

    。。。。。。

    这样就实现了上传文件至数据库

  • node批量读取本地图片并上传

  • 到nodejs服务器的文件里。node可以批量读取图片,node批量读取本地图片并上传到nodejs服务器的文件里。node(结点):网络连接的端点,或两条(或多条)线路的连接点。结点可以是处理器、控制器或工作站。

  • 最近在研究nodejs如何实现文件上传功能

  • 前端formdata或者Ajax上传文件

    Node端:用multiparty接收文件,再用将文件存储到你需要的位置。

    var MULTIPARTY = require('multiparty');

    var FS = require('fs');

    var saveTowerFile = function (req, res, next) {

    var form = new ({uploadDir: "../appData/excel/"});

    (req, function (err, fields, files) {

    if (err) {

    ("上传失败!" + err);

    var errcode = {result: "失败"};

    (errcode);

    return;

    } else {

    var inputFile = [0];

    var uploadedPath = ;

    var dstPath = '../appData/excel/' + UUID.v1();

    (uploadedPath, dstPath, function(err) {

    if (err) {

    var errcode = {result: "失败"};

    (errcode);

    return;

    } else {

    debug('rename ok');

    (“OK”);

    }

    })

    }

    });

    };

    最新文章 更多
    最新素材 更多
    公司介绍 网站地图 图片资讯
    Copyright © 2010-2022 山东找图网络科技有限公司  鲁ICP备18007836号-3  邮箱:15653358549@163.com