nodejs api和swift应用程序之间的连接
我试图创build一个API,我的iOS应用程序连接到。 然而,我不断收到提示, error: not found
当我运行post请求,并设置参数id, name, birth and country
。 但是,如果我只是在邮递员运行url/users/14253/test/10-20-1992/denmark
它工作正常,所以我有点困惑,我做错了什么?
API路线
router.post('/:id/:name/:birth/:country', function(req, res, next) { var params = req.params; var accessHeader = req.headers; var user = new User({ _id: params.id, name: params.name, birthday: new Date(params.birth), country: params.country }); user.save(function(err) { if (err) { res.send(err); } else { res.json({ message: 'User created!' }); } }); });
迅速alamofire请求
func passUserData(id: String, name: String, birth: String, country: String, token: AccessToken) { let headers = [ "Content-Type": "application/x-www-form-urlencoded" ] Alamofire.request("http://url/users", method: .post, parameters: ["id" : id, "name" : name, "birth" : birth, "country" : country], encoding: JSONEncoding.default, headers: headers).responseString { closureResponse in if String(describing: closureResponse.result) == "SUCCESS" { print(closureResponse) } else { print(closureResponse) }} }
您可以传递url中的参数:
Alamofire.request("http://172.20.10.2:3000/users/" + id + "/" + name + "/" + birth + "/" + country, ...);
要么传递正文中的参数:
router.post('/users', function(req, res, next) { var body = req.body; var accessHeader = req.headers; var user = new User({ _id: body.id, name: body.name, birthday: new Date(body.birth), country: body.country }); user.save(function(err) { if (err) { res.send(err); } else { res.json({ message: 'User created!' }); } }); });
- 如何使用ExpressJS / Connect / Crypto获取(大)文件的校验和?
- node.js,以同步的方式在循环中一个接一个地执行mysql查询
- 在Hapijs后端处理由Alamofire在Swift中发送的多部分/表单数据请求
- 常见的节点logging,快速应用 – 最佳实践?
- 在所有日志中打印bunyan中间件reqId
- Jade模板引擎 – 每个迭代偏移量
- Node.js,Express,jQuery.param() – 从JSON中删除引号
- Node.js,Express,MongoDB和stream
- 清理closuresexpress.js + mongodb服务器(使用node.js)