我正在尝试使用带有 C# 的 SOAP API 将图像上传到 Magento 站点。
这是我到目前为止所拥有的,但它不起作用,没有抛出异常或任何东西,但是当我去网站上查看时,图像是空白的。
我需要做 Base64Encode 吗?我只是真正尝试过这个,因为这个PHP 示例做了类似的事情。如果我在没有尝试的情况下尝试它,则会收到带有“错误请求”错误消息的 SOAP 异常。
FileStream fs = File.OpenRead(@"c:\1.jpg");
StreamReader sr = new StreamReader(fs);
string fileConent = sr.ReadToEnd();
byte[] encbuff = Encoding.UTF8.GetBytes(fileConent);
string enc = Convert.ToBase64String(encbuff);
var imageEntity = new catalogProductImageFileEntity();
imageEntity.content = enc;
imageEntity.mime = "image/jpeg";
sr.Close();
fs.Close();
var entityP = new catalogProductAttributeMediaCreateEntity();
entityP.file = imageEntity;
entityP.types = new[] {"image", "small_image", "thumbnail"};
entityP.position = "0";
entityP.exclude = "0";
_m.catalogProductAttributeMediaCreate(MageSessionProvider.GetSession(), SKU, entityP, "default");