簡體   English   中英

使用RestSharp通過Etsy API上傳圖像

[英]Using RestSharp to upload an image via Etsy API

我正在嘗試通過正在開發的Web應用程序將圖像以及新列表添加到我的Etsy帳戶中。 目前,我正在使用:

RestRequest request = new RestRequest("listings", Method.POST);

request.AddFile("image", ReadToEnd(o.mainPhoto), "test.bmp", "image/bmp");
request.AddParameter("image", "test.bmp");

request.AddParameter("title", "This is a test");
request.AddParameter("description", "Test Description");
request.AddParameter("status", "draft");
request.AddParameter("quantity", "1");    
request.AddParameter("price", "5");
request.AddParameter("is_supply", "false");
request.AddParameter("category_id", "68887420");
request.AddParameter("when_made", "2013");
request.AddParameter("who_made", "i_did");
request.AddParameter("shipping_template_id", 5463224); 
var etsyResponse = restClient.Execute<EtsyListing>(request);

清單正確創建,但沒有圖像。

我注意到etsyResponse的內容包含有關上載圖像的信息(即大小,名稱等),包括為該圖像創建的“ tmp_name”。 我應該將列表與etsyResponse中的“ tmp_name”關聯,而不是與文件的上載名稱關聯嗎?

任何幫助表示贊賞。

我實際上只是遇到了完全相同的問題。 我在RestSharp上使用C#服務器端處理程序,以HttpPostedFile實例中的圖像數據發布新列表。 清單草稿創建得很好,但是沒有任何圖像。 就像您提到的那樣,我看到了tmp_name和errors值,這些值似乎表明已創建映像。 經過試驗后,我最終有效的最終解決方案是:

  1. 創建沒有圖像文件的新列表。
  2. 從響應中獲取新列表的listing_id值。
  3. 向資源發出第二個呼叫-(“列表/ [您的新列表的ID] /圖像”)。 將圖像文件添加到此請求。 我還添加了rank參數來控制圖像的顯示順序。

希望這可以幫助。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM