【发布时间】:2018-09-21 03:07:18
【问题描述】:
我需要使用 URL 将媒体导入 Twitter。但是我不知道如何使用 URL 而无需下载图像,将其临时保存在服务器上并在之后删除......
我正在使用 Google Cloud 存储图像,这就是我无法直接访问它的原因。
这就是我想要做的:
var data = require('fs').readFileSync('https://www.example.com/image.png');
//Create the Twitter client
const client = new Twitter({
consumer_key: process.env.consumer_key_dev,
consumer_secret: process.env.consumer_secret_dev,
access_token_key: user.val().access.token,
access_token_secret: user.val().access.secret
});
// Make post request on media endpoint. Pass file data as media parameter
return client.post('media/upload', {media: data}, function(error, media, response) {
if (!error) {
// If successful, a media object will be returned.
console.log(media);
// Lets tweet it
var status = {
status: sendTweet,
media_ids: media.media_id_string // Pass the media id string
}
return client.post('statuses/update', status, function(error, tweet, response) {
if (!error) {
console.log(tweet);
}
});
}
});
但我收到此错误:
ERROR: { Error: ENOENT: no such file or directory, open 'https://storage.googleapis.com/...
知道我应该怎么做吗?
【问题讨论】:
标签: javascript node.js firebase google-cloud-storage fs