javascript代码实例教程-利用Node.js为Node.js生成HttpStatusCode辅助类并发布到npm

发布时间:2019-05-22 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了javascript代码实例教程-利用Node.js为Node.js生成HttpStatusCode辅助类并发布到npm脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
小宝典致力于为广大程序猿(媛)提供高品质的代码服务,请大家多多光顾小站,小宝典在此谢过。

作为一个好的Restfull Api不仅在于service url的语义,可读性,幂等,正交,作为http状态码也很重要,一个好的Http status Code给使用者一个很好的响应,比如200表示正常成功,201表示创建成功,409冲突,404资不存在等等。所以在做一个基于node.js+mongodb+Angularjs的demo时发现node.js exPress没有提供相应的辅助类,但是本人不喜欢将201,404这类毫无语言层次语义的东西到处充斥着,所以最后决定自己写一个,但是同时本人也很懒,不喜欢做重复的苦力活,怎么办?那就从我最熟悉的c#中HttpStatusCode枚举中copy出来吧,最后为了简便在mac上所以采用了利用node.js去解析msdn关于httpstatuscode的文档生成node.js的辅助类。

    代码很简单


  1 VAR http = require('http');
  2
  3 var fs = require('fs');
  4
  5 var $ = require('jquery');
  6
  7 var output = "httpStatusCode/index.js";
  8
  9 (function(){
 10
 11    
 12
 13     String.format = function() {
 14
 15         var s = arguments[0];
 16
 17         for (var i = 0; i < arguments.length - 1; i++) {
 18
 19             var reg = new RegExp("//{" + i + "//}", "gm");
 20
 21             s = s.replace(reg, arguments[i + 1]);
 22
 23         }
 24
 25         return s;
 26
 27     };
 28
 29
 30
 31
 32     var options = {
 33
 34         host:';msdn.microsoft.COM',
 35
 36         port:80,
 37
 38         path:'/zh-cn/library/System.net.httpstatuscode.aspx'
 39
 40     };
 41
 42
 43
 44
 45     http.get(options,function (response) {
 46
 47         var htML = "";
 48
 49         response.on("data",function (chunk) {
 50
 51             html += chunk;
 52
 53         }).on("end", function () {
 54
 55             handler(html);
 56
 57         }).on('error', function (e) {
 58
 59             console.LOG("Got error: " + e.message);
 60
 61         });
 62
 63
 64
 65
 66     function getHttpStatusCode(htmlString) {
 67
 68         var $doc = $(html);
 69
 70         var rows = $doc.find("table#memberList tr:gt(0)");
 71
 72         var status = {};
 73
 74         rows.each(function(i,row){
 75
 76             status[$(row).find("td:eq(1)").text()] =
 77
 78                 parseint($(row).find("td:eq(2)").text().match(//d+/).toString());
 79
 80         });
 81
 82        return status;
 83
 84     };
 85
 86     
 87
 88     function generateCode(status){
 89
 90        var code = "";
 91
 92        code += "exports.httpStatusCode = " + JSON.stringify(status) + ";";
 93
 94        return code;
 95
 96     };
 97
 98    
 99
100     function wrITeFile(code){
101
102         fs.writeFile(output, code, function(err) {
103
104             if(err) {
105
106                 console.log(err);
107
108             } else {
109
110                 console.log("The file was saved " + output + "!");
111
112             }
113
114         });
115
116     };
117
118
119
120
121     function handler(html){
122
123        var status = getHttpStatusCode(html);
124
125        var code = generateCode(status);
126
127        writeFile(code);
128
129     };
130
131
132
133
134   });
135
136 })();

 

觉得可用,就经常来吧! 脚本宝典 欢迎评论哦! js脚本,巧夺天工,精雕玉琢。小宝典献丑了!

脚本宝典总结

以上是脚本宝典为你收集整理的javascript代码实例教程-利用Node.js为Node.js生成HttpStatusCode辅助类并发布到npm全部内容,希望文章能够帮你解决javascript代码实例教程-利用Node.js为Node.js生成HttpStatusCode辅助类并发布到npm所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。