duangsues.is_a? SaltedFish
60 subscribers
609 photos
6 videos
91 files
562 links
🌶🐔🐟 duangsuse 的日常
尤其喜欢发些奇奇怪怪的东西
和转载别人的东西
Download Telegram
本来还有一张以前一起去漓江的相片呢,找不到了。
顺便发现了一个曾经帮助创造体外透析血桥握力器,不用再去买了。
#life 接下来就会回去见一个转学前的老朋友
Forwarded from duangsuse::Echo
转眼间我买的第一个一年的域名已经过期了,我离开酷安入 Telegram 也快一年了,第一次接触 Java 大概也有两年了呢。这两年收获巨大。当然主要都是我自己看书学的((但是也感谢大家的科普,愿大家以后都能成为优秀的工程师,能够游刃有余的处理各种复杂的分布式、并发处理和同步、异步、底层、计算机网络、信息安全、机器学习、CG、算法、优雅函数库 DSL、解释器、逆向工程/二进制相关、函数式逻辑式等问题
This media is not supported in your browser
VIEW IN TELEGRAM
待会要安装一下某台打印机和准备出去玩一会(
This media is not supported in your browser
VIEW IN TELEGRAM
安装好了不过没 A4 纸张...
Forwarded from duangsuse Throws
MinB64 是 2017 年 2 月 8 日(6 日开始 8 日结束更新)的 Android 应用
今天是 2018 年 10 月 27 日。离「正式开始」已经一年又一个多月过去了。 #tech #dev #life
const fs = require('fs')
const util = require('util')
const glob = util.promisify(require('glob'))
const request = require('request-promise')
const version = require('../package.json').version

module.exports = {

VERSION: version,

api: {
upload: 'https://sm.ms/api/upload',
history: 'https://sm.ms/api/list',
clear: 'https://sm.ms/api/clear',
delete: 'https://sm.ms/delete/'
},

headers: {
'User-Agent': request/smms-cli ${version}
},

/**
* Upload an image file
* @param {string} filename - path to a binary image file
* @returns {promise}
*/
upload(filename) {
return glob(filename)
.then(file => {
if (!file.length) {
throw new Error(Invalid filename)
}
let formData = {
smfile: fs.createReadStream(filename),
ssl: 1,
format: 'json'
}
return request
.post({
url: this.api.upload,
headers: this.headers,
formData,
json: true
})
.then((json) => {
if (json.code !== 'success') {
throw new Error(json.msg)
}
return json
})
})
.catch(err => {
throw err
})
},

history() {
return request.get({
url: this.api.history,
headers: this.headers,
json: true
})
},

clear() {
return request.get({
url: this.api.clear,
headers: this.headers,
json: true
})
},

delete(hash) {
return request
.get({
url: this.api.delete + hash,
headers: this.headers,
qs: {
format: 'json'
},
json: true
})
.then((json) => {
if (json.code !== 'success') {
throw new Error(json.msg)
}
return json
})
}

}