Csv 图像服务器-创建URL和文件名列表
我正在通过csv将产品上传到Shopify。我在谷歌硬盘上有一堆带有公共链接的图片,但它们产生了错误。我想有两个问题。首先,我可以将图像保存在驱动器中吗?如果可以,您可以提供哪些资源来帮助我访问url和文件名的API?其次,如果没有,那么托管图像并将图像URl和文件名导出到电子表格中的最佳流程/系统是什么,这样我就可以添加到csv文件中?您没有指定收到的错误类型,但链接外部源图像的一般方法是使用API。从文档中:Csv 图像服务器-创建URL和文件名列表,csv,google-drive-api,shopify,Csv,Google Drive Api,Shopify,我正在通过csv将产品上传到Shopify。我在谷歌硬盘上有一堆带有公共链接的图片,但它们产生了错误。我想有两个问题。首先,我可以将图像保存在驱动器中吗?如果可以,您可以提供哪些资源来帮助我访问url和文件名的API?其次,如果没有,那么托管图像并将图像URl和文件名导出到电子表格中的最佳流程/系统是什么,这样我就可以添加到csv文件中?您没有指定收到的错误类型,但链接外部源图像的一般方法是使用API。从文档中: POST /admin/products/#{id}/images.json {
POST /admin/products/#{id}/images.json
{
"image": {
"src": "http://example.com/rails_logo.gif"
}
}
然而,Shopify不会提供谷歌硬盘上的图像。当图像通过src Shopify链接时,会将其上传并分发到其内容交付网络。加载谷歌硬盘图像时,Shopify会尝试上传,但GD至少会发送一轮重定向,Shopify不会跟随
您最好的选择是:加载图像;base64编码它;使用API上载图像内容。下面的示例显示了如何使用Node.js执行此操作
var https = require('https');
var fs = require('fs');
var cred = new Buffer("APIKey:APIPassword").toString('base64');
var headers = {
Authorization: "Basic " + cred,
"Content-Type": "application/json"
};
var options = {
host: 'mystore.myshopify.com',
port: 443,
path: '/admin/products/1934429697/images.json',
method: 'POST',
headers: headers
};
function sendImageFS() {
// Setup the request. The options parameter is
// the object we defined above.
var req = https.request(options, function(res) {
res.setEncoding('utf-8');
var responseString = '';
res.on('data', function(data) {
responseString += data;
});
res.on('end', function() {
console.log(responseString);
var resultObject = JSON.parse(responseString);
});
});
req.on('error', function(e) {
// TODO: handle error.
console.log(e);
});
fs.readFile('C:\\Users\\Brett\\Desktop\\whitebird_500.jpg', function(err, data) {
var base64data = new Buffer(data).toString('base64');
var imagePayload = {
image: {
attachment: base64data,
filename: 'whitebird.jpg'
}
};
req.write(JSON.stringify(imagePayload));
req.end();
});
}
sendImageFS();
不可以。您不能通过CSV添加google驱动器图像。如果你想通过CSV添加法师,你需要将你所有的图像文件保存到一些直接(无重定向)可用的公共url。我发现了一个非常有趣的解决方法。Shopify无法从受用户级身份验证保护的链接下载图像。为了实现这一点,我将所有的图像放在Dropbox的一个公共文件夹(不是免费的)中,并获取文件的公共链接。这样它就工作了。@HymnZ dropbox不再工作。“截至2017年3月15日,您Dropbox帐户中的公用文件夹已转换为标准文件夹。”@eddyparkinson您也可以使用Shopify的“文件”文件夹来实现此目的。它位于
Admin->Settings->Files