APNs功能之Node.jsMysql应用总结

   这篇文档主要是总结Node.js和Mysql的学习心得体会。当然也可以看作是此前所写的消息推送服务的续篇。

         简单描述下应用背景,我们的应用需要实现苹果的消息推送服务APNs,之前已经实现了iOS客户端配置和功能代码,也实现了推送通知的本地Provider功能代码,具体参考此前的系列总结。好比一个三角形,A点代表iOS移动设备端,B点代表苹果的消息推送服务器,C点代表应用开发者的本地服务器,现在A和B连接好了,B和C也连接好了,就差A和

B建立连接沟通。

         这样一来,很明显就是要在本地搭建一个服务器了,可以处理A发送的请求;当然也少不了数据库,用来存储相关数据。

         说到这里,不同技术背景的人会有不同的方案,在此我采用了Node.js+Mysql的解决方案。当然其他方案如ASN.NET、JSP、PHP加上SQLServer、Mysql、MongoDB等等就不谈论了。纯粹作为技术学习和新方案的尝试。

         Node.js

         作为这篇文档的重点内容,Node.js肯定是要优先总结的。

         我这种刚学习Node.js的新手,就不敢把此文当做Node.js的入门资料了,只是简单介绍一下,然后直接根据应用需求实现代码。

         Node.js实现了服务端Javascript,通过简单快捷的环境搭建,就可以实现一个运行Javascript的服务器。

1、  去官网下载最新的Node.js安装程序。说明一下,我是在Windows32位操作系统上安装,所以下载Windows对应安装程序即可。我的版本为:node-v0.10.24-x86。

2、  安装Node.js。

3、  在开始—>所有程序中,找到Node.js的命令行程序Node.js command prompt并运行

好了,至此,你已经可以开始编程了。就是这么简单快捷。

或许很多人还是很困惑,那在哪里写代码呢,命令行?

在此,我要说一下刚接触时候我的感受:我觉得很郁闷,不知道从何入手。

对于很多新手,大家需要的是把事情说明白一点,而不是玄乎。可以这样理解,Node.js就是一个服务器,用于搭载Javascript、CSS、Html等网页所可以有的一切。但是他本身不集成IDE。再具体点,他的出现,使我们可以不用熟悉的IIS、Apache、Tomcat来部署了,只需要运行Node.js,然后通过一句话“node xxx.js”,加载已经写好的Javascript,就一切OK了。是的,Javascript,那用你熟悉的任何方式和工具去书写吧。Notepad++是我选择的工具。

一定还有疑惑,没关系,我们先来看实例。

下列实例实现一个可以上传图片文件并预览的页面,还有一个向数据库插入一条数据的请求。

先看这个例子NodejsDemo的文件夹结构

 APNs功能之Node.js和Mysql应用总结

说明:index.js是入口,server.js用于启动服务,router.js用于路由请求,requesHandlers.js用于处理路由后的对应请求,mysqlOperation.js用于处理数据库操作,mysqlDBHelper.js用于连接数据库并操作

 

接下就是具体代码部分了,太多语法我无法一下说清楚,在需要的地方,我会稍加说明,想了解更多,建议去官网查看API说明,毕竟是抛砖引玉哈。

 

              Index.js的代码:

 1 var server = require("./server");
 2 
 3 var router = require("./router");
 4 
 5 var requestHandlers = require("./requestHandlers");
 6 
 7  
 8 
 9 var handle = {}
10 
11 handle["/"] = requestHandlers.start;
12 
13 handle["/start"] = requestHandlers.start;
14 
15 handle["/upload"] = requestHandlers.upload;
16 
17 handle["/show"] = requestHandlers.show;
18 
19 handle["/sendMyInfo"] = requestHandlers.sendMyInfo;
20 
21  
22 
23 server.start(router.route, handle);
View Code

相关文章:

  • 2021-12-23
  • 2021-05-03
  • 2021-04-12
  • 2021-09-26
  • 2021-07-17
  • 2022-01-13
  • 2021-06-25
  • 2021-12-28
猜你喜欢
  • 2022-02-19
  • 2022-01-09
  • 2021-06-20
  • 2021-10-24
  • 2022-12-23
  • 2021-04-28
  • 2021-11-06
相关资源
相似解决方案