使用promise测试
This commit is contained in:
parent
82d6fbb99a
commit
ebab715fc0
|
|
@ -0,0 +1,68 @@
|
||||||
|
var mysql = require('mysql');
|
||||||
|
var client = mysql.createConnection({
|
||||||
|
host: '127.0.0.1',
|
||||||
|
user: 'lcq',
|
||||||
|
password: 'fendoubuxi596320',
|
||||||
|
database: 'mybookmarks',
|
||||||
|
multipleStatements: true,
|
||||||
|
port: 3306
|
||||||
|
});
|
||||||
|
client.connect();
|
||||||
|
|
||||||
|
var db = {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
db.insertBookmark = function(user_id, bookmark) {
|
||||||
|
var sql = "INSERT INTO `bookmarks` (`user_id`, `title`, `description`, `url`, `public`, `click_count`) VALUES ('" + user_id + "', '" + bookmark.title + "', '" + bookmark.description + "', '" + bookmark.url + "', '" + bookmark.public + "', '1')";
|
||||||
|
return new Promise(function(resolve, reject) {
|
||||||
|
client.query(sql, (err, result) => {
|
||||||
|
if (err) {
|
||||||
|
reject(err);
|
||||||
|
} else {
|
||||||
|
resolve(result.insertId);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
|
};
|
||||||
|
|
||||||
|
db.insertTagsBookmarks = function(tags, bookmard_id) {
|
||||||
|
sql = "INSERT INTO `tags_bookmarks` (`tag_id`, `bookmark_id`) VALUES";
|
||||||
|
for (var i = 0; i < tags.length; i++) {
|
||||||
|
if (i >= 1) {
|
||||||
|
sql += ','
|
||||||
|
}
|
||||||
|
sql += "('" + tags[i] + "', '" + bookmard_id + "')";
|
||||||
|
}
|
||||||
|
return new Promise(function(resolve, reject) {
|
||||||
|
client.query(sql, (err, result) => {
|
||||||
|
if (err) {
|
||||||
|
reject(err);
|
||||||
|
} else {
|
||||||
|
resolve();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
db.updateLastUseTags = function(user_id, tags) {
|
||||||
|
sql = "UPDATE tags SET last_use = NOW() WHERE user_id = '" + user_id + "' AND id in (";
|
||||||
|
for (var i = 0; i < tags.length; i++) {
|
||||||
|
if (i >= 1) {
|
||||||
|
sql += ','
|
||||||
|
}
|
||||||
|
sql += "'" + tags[i] + "'";
|
||||||
|
}
|
||||||
|
sql += ')'
|
||||||
|
return new Promise(function(resolve, reject) {
|
||||||
|
client.query(sql, (err, result) => {
|
||||||
|
if (err) {
|
||||||
|
reject(err);
|
||||||
|
} else {
|
||||||
|
resolve();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
module.exports = db;
|
||||||
|
|
@ -4,8 +4,9 @@ var crypto = require('crypto');
|
||||||
var http = require('http');
|
var http = require('http');
|
||||||
var https = require('https');
|
var https = require('https');
|
||||||
var cheerio = require('cheerio');
|
var cheerio = require('cheerio');
|
||||||
var request = require('request')
|
var request = require('request');
|
||||||
var iconv = require('iconv-lite')
|
var iconv = require('iconv-lite');
|
||||||
|
var db = require('./database/db.js');
|
||||||
var client = mysql.createConnection({
|
var client = mysql.createConnection({
|
||||||
host: '127.0.0.1',
|
host: '127.0.0.1',
|
||||||
user: 'lcq',
|
user: 'lcq',
|
||||||
|
|
@ -17,6 +18,13 @@ var client = mysql.createConnection({
|
||||||
client.connect();
|
client.connect();
|
||||||
|
|
||||||
api.post('/getTitle', function(req, response) {
|
api.post('/getTitle', function(req, response) {
|
||||||
|
// request
|
||||||
|
// .get('https://www.baidu.com/')
|
||||||
|
// .on('response', function(response) {
|
||||||
|
// console.log(response.statusCode) // 200
|
||||||
|
// console.log(response.headers) // 'image/png'
|
||||||
|
// })
|
||||||
|
|
||||||
var params = req.body.params;
|
var params = req.body.params;
|
||||||
var url = params.url;
|
var url = params.url;
|
||||||
|
|
||||||
|
|
@ -30,6 +38,8 @@ api.post('/getTitle', function(req, response) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
request(options, function(err, res, body) {
|
request(options, function(err, res, body) {
|
||||||
|
var title = '';
|
||||||
|
if (!err && response.statusCode == 200) {
|
||||||
var charset = "utf-8";
|
var charset = "utf-8";
|
||||||
var arr = body.toString().match(/<meta([^>]*?)>/g);
|
var arr = body.toString().match(/<meta([^>]*?)>/g);
|
||||||
if (arr) {
|
if (arr) {
|
||||||
|
|
@ -45,8 +55,10 @@ api.post('/getTitle', function(req, response) {
|
||||||
var html = iconv.decode(body, charset);
|
var html = iconv.decode(body, charset);
|
||||||
var $ = cheerio.load(html, {
|
var $ = cheerio.load(html, {
|
||||||
decodeEntities: false
|
decodeEntities: false
|
||||||
})
|
});
|
||||||
var title = $("title").text();
|
title = $("title").text();
|
||||||
|
}
|
||||||
|
|
||||||
console.log(title);
|
console.log(title);
|
||||||
response.json({
|
response.json({
|
||||||
title: title || '',
|
title: title || '',
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue