是否有适用于Amazon产品API的最新c#示例?

问题描述 投票:7回答:3

我正在尝试创建一个与Amazon的Product API交互的小应用程序(获取文章的价格,等等)

不幸的是,到目前为止我发现的与Amazon WCF服务交互的所有C#示例都已过时。我知道亚马逊决定每个服务调用必须使用个人accessKeyId和secretKey进行签名,因此所有比2009年更早的代码样本(我认为他们在2009年进行了更改)都是无用的。官方的亚马逊文档对我来说也没用,因为它没有提供必要的信息。

我还搜索了两个关于如何访问API的教程,并且这些只会导致任何搜索范围的搜索结果或者只是null。

某处有可用的最新(工作!!)最小样本吗?

c# asp.net amazon
3个回答
3
投票

我找到了一个最新的项目,代码可以在github Nager.AmazonProductAdvertising上找到

掘金

PM> install-package Nager.AmazonProductAdvertising

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

var wrapper = new AmazonWrapper(authentication, AmazonEndpoint.DE, "YourAssociateID");
var result = wrapper.Lookup("B0037X9N5U");

2
投票

所以,我终于根据这里发布的评论找到了解决方案:http://www.falconwebtech.com/post/2010/06/14/Using-WCF-and-SOAP-to-Send-Amazon-Product-Advertising-API-Signed-Requests.aspx这也是URL,我下载了我工作的代码。

我没有通过我的“你唯一的同事ID”,直到现在我都没有。你可以在这里得到它:https://affiliate-program.amazon.com/

itemSearch.AssociateTag = "YourAssociateID";

amazonClient.ItemSearch(itemSearch)之前。

奇迹般有效


1
投票

如果上面的解决方案仍然无效。

尝试这个..(我使用微软Visual Studio 2010)

下载http://www.falconwebtech.com/post/2010/06/14/Using-WCF-and-SOAP-to-Send-Amazon-Product-Advertising-API-Signed-Requests.aspx上的示例代码

我们需要更新服务引用,在app.config,program.cs和reference.cs上做一点改动。

的app.config: (1.)appSettings标签;分配accessKeyId和secretKey值,添加 <add key="associateTag" value="yourAssociateTag" />. (2.)行为标签 - > endpointBehaviors标签 - >行为标签 - > signingBehavior标签;分配accessKeyId和secretKey值。 (3.)bindings tag - > basicHttpBinding标签; (可选)删除除AWSECommerceServiceBindingNoTransport和AWSECommerceServiceBindingTransport之外的绑定标记。 (4.)客户标签; 删除除AWSECommerceServiceBindingTransport之外的端点标记。

Program.cs中: add itemSearch.AssociateTag = ConfigurationManager.AppSettings [“associateTag”];在ItemSearchResponse response = amazonClient.ItemSearch(itemSearch)之前;

reference.cs :(使用visual studio在服务引用文件夹中打开文件) 更改私有ImageSet [] [] imageSetsField;私有的ImageSet [] imageSetsField; 将public ImageSet [] [] ImageSets {...}更改为public ImageSet [] ImageSets {...}

最后我们可以运行我们的程序,它会工作。祝好运..

nb:会有1个警告(无效的子元素签名行为),我想我们可以忽略它,或者如果你有任何解决方案请分享.. ^^ v ..

© www.soinside.com 2019 - 2024. All rights reserved.