NodeJs新手学习笔记练习项目大纲
2012-10-05 05:29 youxiachai 阅读(4790) 评论(0) 编辑 收藏 举报NodeJs新手学习笔记练习项目大纲
- 导言
- NodeJs的个人看法
- 练习项目大纲
导言
毕竟已经不是第一次学编程了,所以就想着折腾点好玩的东西,去NodeJS官网和CnodeJs转一圈以后,慢慢的有点感觉了,把学习过程中的点点滴滴记录下来当做一个一个存档或者为nodejs做一份贡献吧.
NodeJs的个人看法
NodeJs里面最经典的例子莫过于那个http服务器了,也是目前而言最成熟的nodejs学习的案例.在学习nodejs的过程中发现,很少发现有Nodejs 更移动客户端打交道的资料,个人愚见,nodejs的异步IO模型非常适合用于在移动客户端的领域里面,举个不太严谨的例子,例如上传一张图片,在当前的移动互联网速很慢的时候的,服务器不可能为了等待你的一张图片上传,不断的慢慢等待.在这里使用异步IO的话,服务器只管接受图片上传就行了,其它的什么都不用管.以上是我对nodejs的应用范围的一点愚见.
所以,这次的练习项目就是简单的仿照时下热门的Instagram
练习项目的规划
这里的目的毕竟不是要完全的模仿Instagram所以,设计就非常随便了.
让我们想想Instagram的主要功能
客户端部分
- 进行图片获取
- 将图片上传
服务端播放
- 接收图片
- 保存图片
我把Instagram的功能做了一个面目全非的精简,我们实现的目标只需要
1.客户端能拍照上传
2.服务端能接收图片上传
第一期的练习项目就是完成以上两个目标.
客户端部分
经过两个小时的编码终于有个雏形了并打包成apk可以安装在手机上,因为这里是nodejs社区,对客户端有兴趣的话可以关注我的博客 我的博客 在以后的某段时间,我也会把客户端的开发的进程也记录下来.
服务端
nodejs + express 3.x
这次服务端要做的事情比较简单,说白了只不过是要支持文件上传而已,用express 实现起来十分简单
片段一:
// 获得文件的临时路径
var tmp_path = req.files.thumbnail.path;
这里要特地说一下,win下和,linux下的区别.win下的文件系统不像linux那样所有的路径都可以基于 /xxx/xx完成,所以在win下express里面改变文件默认上传的目录的话,最好还是填绝对路径.
片段二
// 将临时文件移动到目标文件夹
`fs.rename(temppath, targetpath, function(err) {if(err) throw err;
//删除临时文件
fs.unlink(temp_path, function() { if(err) throw err; }); });`
更多细节还是app.js看源代码47行 - 54行
就这么完了?当然不会了,接下来有得是折腾,不过暂时让我歇一歇吧,有兴趣的朋友就持续关注吧,不过,期望不要太高,毕竟俺只是兴趣而为而已
作者:游戏阿柴
出处:http://www.cnblogs.com/youxilua
本文采用知识共享署名-非商业性使用-相同方式共享 2.5 中国大陆许可协议进行许可,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接。
微博联系:新浪微博
用支付宝赞助博主:http://me.alipay.com/youxilua
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
· Pantheons:用 TypeScript 打造主流大模型对话的一站式集成库