/* ## Web */ module.exports = { /* 随机生成一个 URL。 [URL 规范](http://www.w3.org/Addressing/URL/url-spec.txt) http Hypertext Transfer Protocol ftp File Transfer protocol gopher The Gopher protocol mailto Electronic mail address mid Message identifiers for electronic mail cid Content identifiers for MIME body part news Usenet news nntp Usenet news for local NNTP access only prospero Access using the prospero protocols telnet rlogin tn3270 Reference to interactive sessions wais Wide Area Information Servers */ url: function(protocol, host) { return (protocol || this.protocol()) + '://' + // protocol? (host || this.domain()) + // host? '/' + this.word() }, // 随机生成一个 URL 协议。 protocol: function() { return this.pick( // 协议簇 'http ftp gopher mailto mid cid news nntp prospero telnet rlogin tn3270 wais'.split(' ') ) }, // 随机生成一个域名。 domain: function(tld) { return this.word() + '.' + (tld || this.tld()) }, /* 随机生成一个顶级域名。 国际顶级域名 international top-level domain-names, iTLDs 国家顶级域名 national top-level domainnames, nTLDs [域名后缀大全](http://www.163ns.com/zixun/post/4417.html) */ tld: function() { // Top Level Domain return this.pick( ( // 域名后缀 'com net org edu gov int mil cn ' + // 国内域名 'com.cn net.cn gov.cn org.cn ' + // 中文国内域名 '中国 中国互联.公司 中国互联.网络 ' + // 新国际域名 'tel biz cc tv info name hk mobi asia cd travel pro museum coop aero ' + // 世界各国域名后缀 'ad ae af ag ai al am an ao aq ar as at au aw az ba bb bd be bf bg bh bi bj bm bn bo br bs bt bv bw by bz ca cc cf cg ch ci ck cl cm cn co cq cr cu cv cx cy cz de dj dk dm do dz ec ee eg eh es et ev fi fj fk fm fo fr ga gb gd ge gf gh gi gl gm gn gp gr gt gu gw gy hk hm hn hr ht hu id ie il in io iq ir is it jm jo jp ke kg kh ki km kn kp kr kw ky kz la lb lc li lk lr ls lt lu lv ly ma mc md mg mh ml mm mn mo mp mq mr ms mt mv mw mx my mz na nc ne nf ng ni nl no np nr nt nu nz om qa pa pe pf pg ph pk pl pm pn pr pt pw py re ro ru rw sa sb sc sd se sg sh si sj sk sl sm sn so sr st su sy sz tc td tf tg th tj tk tm tn to tp tr tt tv tw tz ua ug uk us uy va vc ve vg vn vu wf ws ye yu za zm zr zw' ).split(' ') ) }, // 随机生成一个邮件地址。 email: function(domain) { return this.character('lower') + '.' + this.word() + '@' + ( domain || (this.word() + '.' + this.tld()) ) // return this.character('lower') + '.' + this.last().toLowerCase() + '@' + this.last().toLowerCase() + '.' + this.tld() // return this.word() + '@' + (domain || this.domain()) }, // 随机生成一个 IP 地址。 ip: function() { return this.natural(0, 255) + '.' + this.natural(0, 255) + '.' + this.natural(0, 255) + '.' + this.natural(0, 255) } }