C#でSOAP APIを使用してMagentoサイトに画像をアップロードしようとしています。Magento SOAP API経由で画像をアップロードする
これは私がこれまで行ってきたことですが、動作していない、例外がスローされたり、何かが起こったりします。
Base64Encodeを実行する必要はありますか?私は実際にこれを試しましたthis PHPの例は何か似ています。私がそれを試さなければ、 "Bad Request"のエラーメッセージを持つ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");
+1はうまく機能しました。ただ1つの質問です。複数の画像があり、コード全体を囲むforeachループがあると、画像が正しい場合はアップロードされますが、常に1つの画像になります。ループの苛立ちの後にMemoryStreamを処分する必要はありますか?ありがとう! –
ありがとうございます。私はちょうどMagentoに既存のシステムを統合するためのプロジェクトを始めました、そして、ドキュメンテーションは事実上存在しません。これは私が必要としていたものでした。 – Archer
もし私があなたに+ 10^19を与えることができたら、私はそうするでしょう。 –