node.js - nodejs应该怎么接受ajax上传的数据?

 涛之圣首到 发布于 2022-11-07 08:40

我创建了一个通过web页面编辑修改服务器端的xml文件的网页,网页通过JS读取并修改了xml文件并将其储存在全局变量xmlDoc里面,我想通过jquery和ajax进行上传。

其中xmlDoc的内容是包含整个xml文档里面所有的乱七八糟的信息的,包括题头等,所有我并不知道该怎么上传。

预计方式是同下面代码:

function upload() {
    $.ajax({
        type:"POST",
        url:"/whatever",
        data:"xml=" + xmlDoc,
        dataType:"xml",
    });

上面只是预计代码,并未试验过(因为我连怎么试验都不会啊= =||)
由于xmlDoc的值真的是乱七八糟,所以到现在上传信息还没成功过,希望大触能帮忙修改一下=。=
另外node端的接受代码我也不会写,app.params, app.body并不知道该用哪个,也不知道该怎么提取xml=后面的信息,求大触帮忙解决一下OTL,先谢谢了

4 个回答
  • var resultData=“”;
    request.on('data',function(data){
        resultData = resultData +data;
    });
    request.on('end',function(){
        //请求的数据获取
        //获取数据后,按数据类型自行解析
    });
    2022-11-12 01:42 回答
  • 首先Ajax请求对node端和普通请求应该是一回事儿,所说的异步只是对客户端而言的,然后你的post数据过去我觉得没必要当成xml ,可以直接当字符串来传,到node那一段用fs 模块写下就好了!

    2022-11-12 01:42 回答
  • http server你可以使用node自带的http或者第三方的express,具体的用法你去百度一下吧。
    另外回答你第二各问题
    request.body是取你post方法中form里的床来的key value,而request.params是取你url上path中的参数,如res.post("/user/:id") 中用 request.params.id就能取得 参数id的值2(如:实际url为http://xxxx/user/2),还有一种request.query是用来去get方法中url后带的参数 如 http://xxx/user/?pageNo=1&pageSize=10 中问好后的2个参数的。

    2022-11-12 01:42 回答
  • 客户端js应该如下:

    $.ajax({
      type:"POST",
      url:"/whatever",
      data: {xml: xmlDoc}
    });

    Node.js 可以这样处理:

    app.post('/whatever', function(req, res, next){
      // xml string
      console.log('xmlDoc:', req.body.xml);
      res.json(req.body.xml);
    });
    2022-11-12 01:42 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有