javascript - 将数据从 swift 发布到 node.js

标签 javascript node.js swift

我知道这之前已经被解决过,但我花了几个小时在这上面,似乎不知道如何将数据发布到node.js服务器...我已经使用cloud9和node开始了这个项目.js 所以我知道我已经安装良好并且我正在从一个工作站点开始。

我很快就会发送一个帖子请求,例如

func post (){
    let url = URL(string: "https://the-game-stevens-apps.c9users.io/index.html/")!
    var request = URLRequest(url: url)
    request.setValue("application/x-www-form-urlencoded", forHTTPHeaderField: "Accept")
    request.setValue("application/x-www-form-urlencoded", forHTTPHeaderField: "Content-Type")
    request.httpMethod = "POST"
    let postString = "name=henry&message=HelloWorld"
    request.httpBody = postString.data(using: .utf8)
    let task = URLSession.shared.dataTask(with: request) { data, response, error in
        guard let data = data, error == nil else {
            print("error=\(error)")
            return
        }
        if let httpStatus = response as? HTTPURLResponse, httpStatus.statusCode != 200 {           // check for http errors
            print("statusCode should be 200, but is \(httpStatus.statusCode)")
            print("response = \(response)")
        }
        let responseString = String(data: data, encoding: .utf8)
        print("responseString = \(responseString)")
    }
    task.resume()
}

然后在我的 server.js 文件中

  var router = express();
  router.use(express.urlencoded());
  router.post('/index.html', function(req, res) {
     var obj = {name:req.body.name,text:req.body.message};
  });

我在 javascript 方面有丰富的经验,但对于 Node.js 我是个菜鸟,并且刚刚开始研究它,非常感谢任何帮助

最佳答案

我可以在你的node.js代码中纠正的唯一部分是

要获取路由器,您需要调用express.Router();

  const express = require('express');
  const router = express.Router();
  router.use((req,res,next) => {
      console.log("/" + req.method,  "host"+ req.host, "Params" + req.params);
      next();
  });

  router.post('/index.html', (req, res) => {
         const obj = {name:req.body.name,text:req.body.message};
        //insert obj into database
  });

关于javascript - 将数据从 swift 发布到 node.js,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52789735/

相关文章:

javascript - 将 Blob 对象转换为文件,对于 Ms Edge

javascript - 如何使用 jquery 定位 <li> 项目并更改其文本

javascript - HTML Javascript 字体大小更改

javascript - 使用公共(public)IP运行/socket.io/socket.io.js

ios - 为什么我的 UILabel 文本在 Xcode 8.1 的 Swift3 中没有改变

javascript - 无法向 DOM 添加元素

javascript - Nodejs 中的异步/等待替换

javascript - 在 Express 中提供静态 HTML 文件的不同路径

ios - 检查函数在 Swift 中是否可用?

ios - 索引的分段控件的特定 View 或标签