YAML语法
- 缩进格式均使用空格符,兼容编辑器,而没有采用TAB
- 官方文档
- 注释:
1 | # Author: Yutiya |
- 序列(数组):
1 | - Mark |
- 字典(键值对):
1 | hr: 65 |
原来这样写创建出来的obj是一个对象
在Javascript中没有map噢(也就是在别的语言中常常使用的键值对)
1 | var obj = { |
直接打印上面创建的对象,会打印出
在Node.js中还不会打印出前面的Object
1 | console.log(obj); |
如果这样呢?因为它真的是Javascript对象,我也是现在才知道,不晚!
1 | console.log('obj:' + obj); |
在工作中遇到一个问题,本来可以直接将字典转换成json,再转换成nsdata,设置到httpbody中
就可以请求服务器了,可是服务器不方便解析(其实是做服务器开发的不知道怎么解析收到的数据|_|)
最后只能将字典遍历键值对变成查询字符串的样子设置在body中
For Example:
1 | { |
通常上传到服务器的数据都需要编码一次,不过我上传的数据全是[a-zA-Z0-9]等等,不用编码也是可以的
可是问题出现了,上传到服务器的数据中有+号,看了阮一峰的博客,从中可以看到+在服务器会被自动解析成空格
简直是见了鬼,然后就得改代码呗
1 | NSString *str = @"username=yutiya&lock=abc+bbc+ccc"; |
然而并没有什么卵用,好,我换了一个方法
建立一个新的项目,实现在浏览器中访问http://localhost:3000/?q=yutiya
时
输出yutiya的md5值
该文件包含了项目的依赖等各种信息,当在项目文件夹下执行npm install
会自动读取该文件,安装依赖到node_modules文件夹下,最后运行就可以跑起来了
1 | $ mkdir lesson2 && cd lesson2 |
终端会提示输入信息,可以全部回车,然后使用编辑器打开,就能看到对应的键值了
init的目的就是为了生成package.json
执行$ npm install express utility --save
会自动在json文件中添加依赖项,类似下面这样
1 | "dependencies": { |
node_modules
也会有对应的文件内容产生噢
Node.js 异步特性特别厉害,想要学习,利用爬虫的场景比较适合.
原文中介绍了爬github有rate limit限制,作者是菜鸟,不懂,所以也爬了Node.js开源社区CNode社区
使用了三个依赖,分别是express、superagent和cheerio
superagent是一个http方面的库,可以发起get或post请求
cheerio大家可以理解为Node.js版的jQuery,使用方式和jQuery一样
两者均为链式操作,用起来特别爽
走你:1
2
3
4$ npm init // 初始化
$ npm install <packeagename> --save
$ touch app.js
$ vi app.js
第一步我们尝试打印出superagent发出的get请求的内容
1 | var superagent = require('superagent'); |
输出CNode社区社区首页的所有主题的标题,链接和第一条评论,以 json 的格式。原文地址:lesson4
示例:1
2
3
4
5
6
7
8
9
10
11
12[
{
"title": "【公告】发招聘帖的同学留意一下这里",
"href": "http://cnodejs.org/topic/541ed2d05e28155f24676a12",
"comment1": "呵呵呵呵"
},
{
"title": "发布一款 Sublime Text 下的 JavaScript 语法高亮插件",
"href": "http://cnodejs.org/topic/54207e2efffeb6de3d61f68f",
"comment1": "沙发!"
}
]
输出帖子的作者,以及他在cnode社区的积分值,这里和原文不同,作者看错了,不过也算挑战
示例:
1 | [ |
原文: 以上文目标为基础,输出 comment1 的作者,以及他在 cnode 社区的积分值。
就一个地方不同,我过后会修改代码附上
在github帐号中绑定的邮箱收不到验证码的时候
请在163邮箱的设置->反垃圾/黑名单 的白名单列表添加
一般添加完后就能收到了,添加后不能收到,在github中多点击几次发送验证邮件就能收到了,网易旗下邮箱均按此设置,估计网易的反垃圾邮件机制出问题了
Githuber,Happy!
Mac下:sudo npm install -g express-generator@3
(express3)sudo npm install -g express-generator
(express4)
下面的学习均按照express3进行
1 | $ express -e nodejs-demo |
app.js:
1 | var express = require('express'); |
执行$ node app.js
访问localhost:3000
,可以看到打印的Hello World!.
我们熟悉的url其实是这个样子:<scheme>://<user>:<password>@<host>:<port>/<url-path>
ftp:ftp://账号:密码@主机/目录或文件
现在的使用的url精简成了这样:<scheme>://<host>:<port>/<url-path>
1 | $ groupadd hadoop |
Update your browser to view this website correctly. Update my browser now