【问题标题】:Error 403 from call to Etsy API for createListing调用 Etsy API 以进行 createListing 时出现错误 403
【发布时间】:2016-09-15 03:36:19
【问题描述】:

我正在编写一个用于管理 Etsy 列表的 Mac 应用程序。我正在使用objective-c 和OauthConsumer 库。

我已成功获取身份验证令牌并检索到列表和类别。

现在我想创建一个列表。我创建了一个字典,其中包含测试所需的最少字段。

这是调试输出。我刚刚修改了 oauth_token。

你能看到问题吗?谢谢

2016-08-28 12:31:09.042 Goods[32465:16639890] ListingDictionary: {

params =     {

    "category_id" = 323;

    description = "testing - not for sale";

    "is_supply" = false;

    price = 3000;

    quantity = 1;

    title = "testing - not for sale";

    "when_made" = 1920s;

    "who_made" = "someone_else";

};

}

2016-08-28 12:31:09.042 Goods[32465:16639890] jsonString: {"params":{"title":"testing - not for sale","when_made":"1920s","who_made" :"someone_else","quantity":"1","is_supply":"false","price":"3000","category_id":"323","description":"testing - not for sale"}}

2016-08-28 12:31:12.475 商品[32465:16639890] urlString:https://openapi.etsy.com/v2/listings/

2016-08-28 12:31:12.476 商品[32465:16639890] 请求:url:https://openapi.etsy.com/v2/listings/

所有HTTPHeaderFields:{

Authorization = "OAuth realm=\"\", oauth_consumer_key=\"b2ttpixxxxxxxxnciaubi8\", oauth_token=\"xxxxxxxxxxxx\", oauth_signature_method=\"HMAC-SHA1\", oauth_signature=\"NHSLUPAZyrtOrEI%2BAQCV9w74%2BIc%3D\", oauth_timestamp=\"1472409072\", oauth_nonce=\"BF3E6982-695E-4EF4-AD70-BDF8A401A65B\", oauth_version=\"1.0\"";

method = createListing;

}

_signatureBaseString: POST&https%3A%2F%2Fopenapi.etsy.com%2Fv2%2Flistings%2F&oauth_consumer_key%3Db2ttpia1jk3j2ijhnciaubi8%26oauth_nonce%3DBF3E6982-695E-4EF4-AD70-BDF8A401A65B%26oauth_signature_method%3DHMAC-SHA1%26oauth_timestamp%3D1472409072%26oauth_token%3D840f745e22136b6351500b567ee6c9 %26oauth_version%3D1.0

2016-08-28 12:31:12.476 Goods[32465:16639890] configuration.HTTPAdditionalHeaders: (null)

2016-08-28 12:31:12.477 商品[32465:16639890] etsyItem:

2016-08-28 12:31:13.069 商品[32465:16640021] statusCode: 403

2016-08-28 12:31:13.069 商品[32465:16640021] hTTPURLResponse.allHeaderFields: {

"Cache-Control" = private;

Connection = close;

"Content-Length" = 766;

"Content-Type" = "text/plain;charset=UTF-8";

Date = "Sun, 28 Aug 2016 18:31:13 GMT";

Server = Apache;

"X-Cnection" = close;

"X-Error-Detail" = "oauth_problem=signature_invalid&debug_sbs=POST&https%3A%2F%2Fopenapi.etsy.com%2Fv2%2Flistings%2F&oauth_consumer_key%3Db2ttpia1jk3j2ijhnciaubi8%26oauth_nonce%3DBF3E6982-695E-4EF4-AD70-BDF8A401A65B%26oauth_signature_method%3DHMAC-SHA1%26oauth_timestamp%3D1472409072%26oauth_token%3D840f745e22136b6351500b567ee6c9%26oauth_version%3D1.0%26%257B%2522params%2522%253A%257B%2522title%2522%253A%2522testing_-_not_for_sale%2522%252C%2522when_made%2522%253A%25221920s%2522%252C%2522who_made%2522%253A%2522someone_else%2522%252C%2522quantity%2522%253A%25221%2522%252C%2522is_supply%2522%253A%2522false%2522%252C%2522price%2522%253A%25223000%2522%252C%2522category_id%2522%253A%2522323%2522%252C%2522description%2522%253A%2522testing_-_not_for_sale%2522%257D%257D%3D";

"X-Etsy-Request-Uuid" = 084ELjPQBbhJzUjLaOa3XxHVfwSh;

}

【问题讨论】:

    标签: oauth etsy


    【解决方案1】:

    您是否尝试过将 shipping_template_id 添加到参数中的配置中?我在上面没有看到它

    我遇到了类似的问题,但错误消息告诉我 shipping_template_id 丢失。

    创建一个新的列表。注意:在以下情况下需要 shipping_template_id 创建列表。注意:在 www.etsy.com 创建的所有列表必须是 实际出售的物品。请参阅我们的实时测试指南 清单。

    我也不确定您的请求网址是否是 etsy 的 寻找。这是我用作基本网址的示例 https://openapi.etsy.com/v2/listings

    在我设置好帖子网址后,我会为最低要求添加以下参数:

    • shipping_template_id
    • 列表项
    • 标题
    • 说明
    • 价格
    • who_made
    • is_supply
    • state 重要这不是必需的,但会创建处于活动状态的项目。对于测试,我总是将状态设置为草稿,这样它就不会收取商店启动费。

    如果这有帮助,请告诉我,我有示例,但它们是基于 Java 的。确保您使用的是发布请求,如果错误消息没有更改,那么我们需要查看您的身份验证代码,以确保在发出发布请求之前获得正确的令牌。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-07-04
      • 2016-10-27
      • 1970-01-01
      • 2015-06-17
      • 2020-07-14
      • 1970-01-01
      • 2015-03-03
      • 1970-01-01
      相关资源
      最近更新 更多