- 授权协议: 未知
- 开发语言: JavaScript
- 操作系统: 跨平台
- 软件首页: https://github.com/edwardhotchkiss/short
软件介绍
short是一个开源的短域名服务,使用Node.js与MongoDB搭建,可以直接在你的Server程序中调用,也可以通过Node.js的http server模块以一个服务启动。
可以直接通过Node.js的npm进行安装:
$ npm install short
你可以直接在你的Node.js项目中这样调用,生成长域名对应的短链接:
var mongoose = require("mongoose");
var short = require("short");
mongoose.connect("mongodb://localhost/short");
var URL = "http://nodejs.org/";
short.make(URL, function(error, shortURL) {
if (error) {
console.error(error);
} else {
short.get(shortURL.hash, function(error, shortURLObject) {
if (error) {
console.error(error);
} else {
var URL = shortURLObject[0].URL
var hash = shortURLObject[0].hash;
console.log(URL, hash);
process.exit(1);
};
});
}
});
下面代码用于搭建一个提供短域名跳转的HTTP 服务:
var http = require("http");
var mongoose = require("mongoose");
var short = require("short");
mongoose.connect("mongodb://localhost/short");
var app = http.createServer(function(request, response) {
var hash = request.url.slice(1);
if (request.url === "/") {
response.writeHead(200, { "Content-Type" : "text/html" });
response.write("URL not found!");
response.end();
} else {
short.get(hash, function(error, shortURLObject) {
if (error) {
console.error(error);
} else {
if (shortURLObject) {
var URL = shortURLObject[0].URL;
response.writeHead(302, {
"Location" : URL
});
response.end();
} else {
response.writeHead(200, { "Content-Type" : "text/html" });
response.write("URL not found!");
response.end();
}
};
});
}
});
app.listen(8080);
console.log("> Open http://localhost:8080/kQ4c");
Google's PageRank and Beyond
Amy N. Langville、Carl D. Meyer / Princeton University Press / 2006-7-23 / USD 57.50
Why doesn't your home page appear on the first page of search results, even when you query your own name? How do other web pages always appear at the top? What creates these powerful rankings? And how......一起来看看 《Google's PageRank and Beyond》 这本书的介绍吧!
