JS在线运行

版本:
运行结果
教程手册
代码仓库
极速运行
终端运行
图形+终端

                        
以下是用户最新保存的代码
实现wifi断线重连。需运行开源程序hummingbird。下载地址:(https://gitee.com/QdbcShen/hummingbird/) 发布于:2023-09-21 10:07 事件循环 代码执行顺序 发布于:2023-09-21 09:34 第三周选择排序 发布于:2023-09-20 21:23 找出1-10能被3整除的数 发布于:2023-09-20 19:43 冒泡排序,选择排序 发布于:2023-09-19 17:15 处理排序问题 发布于:2023-09-19 01:12 js 类的创建 发布于:2023-09-18 22:55 相应式(3) 嵌套的副作用函数 发布于:2023-09-17 13:56 响应式 (2) 分支切换和cleanup 发布于:2023-09-17 13:56 js调用CryptoJS解密 发布于:2023-09-16 00:24 相对路径转为绝对路径----ico相对路径、绝对路径转换(二) 发布于:2023-09-19 17:46 相对路径转为绝对路径(一) 发布于:2023-09-19 17:45 / 对版本数组 arr = ["2.0", "1.2.1", "1.3"] 进行升序,并计算圈复杂度 发布于:2023-09-14 20:26 JS实现嵌套对象的扁平化 发布于:2023-09-13 11:29 在有限整数序列中找到最大值的算法 发布于:2023-09-12 09:09 给定两个不等于0的整数M和N,求M和N的最大公约数 发布于:2023-09-11 23:03 设计模式实现 发布于:2023-09-12 20:47 给定两个不等于0的整数M和N,求M和N的最大公约数 发布于:2023-09-10 20:14 第三题:求两数之间的公约数 发布于:2023-09-09 20:17 在有限整数序列中找到最大值的算法 发布于:2023-09-09 19:59 temu 自动添加发货台 发布于:2023-09-09 21:40 temu 爬虫 发布于:2023-09-09 20:33 这个是单调盏的使用方法 发布于:2023-09-07 21:58 第一周实验代码 发布于:2023-09-12 20:25 JS求数组最大值 发布于:2023-09-11 15:18 js规格处理2 发布于:2023-09-05 17:53 (最简易版本2)js笛卡尔积生成商品SKU多规格算法 源自:http://www.hzhcontrols.com/new-1286125.html 发布于:2023-09-05 18:18 有限整数序列中找到最大值 发布于:2023-09-10 10:04 js排序测试 发布于:2023-09-02 10:06 # js模块测试 发布于:2023-08-31 18:11 物联js解析 发布于:2023-09-20 18:24 支持并发的调度器, 最多允许2任务进行处理 发布于:2023-08-31 15:18 使用document.documentElement获得html里id为str的元素 发布于:2023-08-30 16:26 [拼多多]高难度模板字符串匹配 发布于:2023-08-29 22:15 // 实现一个run方法,使得run(fucArr)能顺序输出1、2、3 发布于:2023-08-29 17:44 只有最后一次promise会then与reject 发布于:2023-08-29 17:23 各种排序方法集合 发布于:2023-08-29 17:36 防抖和节流 发布于:2023-08-29 15:27 客户报价提交校验产品所处周期 发布于:2023-08-29 17:50 fetch smt 发布于:2023-08-28 18:46 var obj = { x: 1, y: 2, z: 3 }; [...obj]; // TypeError // 能否以某种方式为上面的语句使用展开运算而不导致类型错误 // 如果可以,写出解决方式 发布于:2023-08-29 16:02 用reduce实现map 发布于:2023-08-28 16:54 测试小红书x-sdiam 发布于:2023-08-28 11:49 rt刷题目 发布于:2023-09-04 21:51 timeoutRequest,超时request的async写法 发布于:2023-08-28 16:53 // _.chunk(['a', 'b', 'c', 'd'], 0); // => [] // 数组分块 发布于:2023-08-25 11:43 测试es6的class方法 发布于:2023-08-25 16:19 手写myTrim() 发布于:2023-09-12 21:21 《JavaScript 算法与数据结构》 3.4 一个基于列表的应用 发布于:2023-08-24 22:43 手写模板字符串 发布于:2023-08-23 18:11 [更多]
显示目录

文件上传



文件上传

我们创建一个用于上传文件的表单,使用POST方法,表单enctype属性设置为multipart/form-data。

index.htm文件代码修改如下:

<html>
<head>
<title>文件上传表单</title>
</head>
<body>
<h3>文件上传:</h3>
选择一个文件上传: <br />
<form action="/file_upload" method="post" enctype="multipart/form-data">
<input type="file" name="image" size="50" />
<br />
<input type="submit" value="上传文件" />
</form>
</body>
</html>

server.js文件代码修改如下:

var express = require('express');
var app = express();
var fs = require("fs");

var bodyParser = require('body-parser');
var multer  = require('multer');

app.use(express.static('public'));
app.use(bodyParser.urlencoded({ extended: false }));
app.use(multer({ dest: '/tmp/'}).array('image'));

app.get('/index.htm', function (req, res) {
   res.sendFile( __dirname + "/" + "index.htm" );
})

app.post('/file_upload', function (req, res) {

   console.log(req.files[0]);  // 上传的文件信息

   var des_file = __dirname + "/" + req.files[0].originalname;
   fs.readFile( req.files[0].path, function (err, data) {
        fs.writeFile(des_file, data, function (err) {
         if( err ){
              console.log( err );
         }else{
               response = {
                   message:'File uploaded successfully', 
                   filename:req.files[0].originalname
              };
          }
          console.log( response );
          res.end( JSON.stringify( response ) );
       });
   });
})

var server = app.listen(8081, function () {

  var host = server.address().address
  var port = server.address().port

  console.log("应用实例,访问地址为 http://%s:%s", host, port)

})

执行以上代码:

$ node server.js 
应用实例,访问地址为 http://0.0.0.0:8081

浏览器访问http://127.0.0.1:8081/index.htm,如图所示:

现在你可以向表单输入数据,并提交,如下演示:

由JSRUN为你提供的JS在线运行、在线编译工具
        JSRUN提供的JS 在线运行,JS 在线运行工具,基于linux操作系统环境提供线上编译和线上运行,具有运行快速,运行结果与常用开发、生产环境保持一致的特点。