【问题标题】:C# library for Amazon Product Advertising API亚马逊产品广告 API 的 C# 库
【发布时间】:2020-02-05 15:33:26
【问题描述】:

我正在尝试从“亚马逊产品广告 API”中检索数据,我发现我需要签署我的请求,然后响应是一个应该被解析的 XML 文档。

我想知道是否有任何库可以发送我的请求,并将响应作为对象接收。

如果没有,我应该怎么做才能将这些 XML 响应转换为对象?我已经阅读了有关架构的信息,但是我从哪里获得这些架构以及从哪里获得响应对象的防御,以便我可以自己定义它们。

非常感谢!

【问题讨论】:

  • AWS 有一个 C# 开发工具包,用于处理签名请求和解析响应。你调查过吗?我没有使用过产品广告,但我确信它也涵盖了该 API
  • 恕我直言,XML DOM 是一个对象。重新考虑为什么需要 POCO 中的响应,您可能会发现转换为中间对象只是开销。您可能 a) 插入数据库,b) 呈现给 HTML。两者都可以通过 XML 中保留的数据轻松完成,而不是 POCO。

标签: c# xml amazon-web-services amazon-product-api


【解决方案1】:

可以使用以下nuget

PM> Install-Package Nager.AmazonProductAdvertising

示例:

var authentication = new AmazonAuthentication();
authentication.AccessKey = "accesskey";
authentication.SecretKey = "secretkey";

var client = new AmazonProductAdvertisingClient(authentication, AmazonEndpoint.DE);
//Search
var result = await client.SearchItemsAsync("canon eos");
//Lookup
var result = await client.GetItemsAsync("B00BYPW00I");

【讨论】:

  • 嗨,当我尝试运行上面的代码时,结果总是返回 null。我认为 AccessKey 和 SecretKey 没有问题,但我找不到问题所在。你有什么建议吗?
  • 查看此事件的响应wrapper.ErrorReceived += (errorResonse) => { System.Diagnostics.Debug.WriteLine(errorResonse.Error.Message); };
  • 非常感谢您的回复。我已经实现了该事件,但没有返回错误。有什么可以查的吗?
  • 请打开一个新问题并发布您的代码示例
  • 这是一篇有用的帖子,我发现 nuget 正在定期更新
【解决方案2】:

有一个库可帮助您签署请求并通过将 XML 转换为相对易于使用的对象来处理响应。我已经使用它几个星期了,并编写了自己的帮助类来真正快速轻松地查询 API。

我编写了一个演示控制台 C# 应用程序,您可以在其中插入您的 Amazon 凭据并开始在这里玩: https://github.com/zoenberger/AmazonProductAdvertising

我在这里也回答了一个类似的问题: https://stackoverflow.com/a/33617604/5543992

【讨论】:

    猜你喜欢
    • 2012-05-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-10-29
    • 1970-01-01
    相关资源
    最近更新 更多