2009-08-21 25 views
10

Tính đến ngày 15 tháng 8, Amazon bắt buộc phải ký mọi yêu cầu được gửi tới API quảng cáo sản phẩm của họ. Tôi nghĩ rằng tôi đã có mọi thứ hoạt động tốt nhưng khi ngày 15 cuối cùng xuất hiện, ứng dụng web của tôi ngừng hoạt động và khá nhiều kể từ khi tôi cố gắng tìm ra cách ký các yêu cầu SOAP.C# Amazon Product Advertising API

Amazon có một mẫu mã lỗi thời để ký kết yêu cầu mà không xuất hiện để làm việc here

Về cơ bản, tôi cần phải biết làm thế nào để thêm một chữ ký vào yêu cầu của tôi bằng cách sử dụng mới nhất C# SOAP API và .NET 3.5.

Tôi hy vọng tôi đã cung cấp đủ chi tiết, nếu tôi không vui lòng yêu cầu tôi xây dựng.

cảm ơn
The_Lorax

UPDATE: Tôi đang sử dụng MVC và cần phải biết làm thế nào để thêm chữ ký vào đối tượng ItemLookup hoặc AWSECommerceService. Có thuộc tính nào chứa giá trị chữ ký không? Làm thế nào để nó được gắn vào yêu cầu?

Trên this page, họ nói rằng tôi phải bao gồm các thông số Chữ ký và Dấu thời gian nhưng hiện tại, intellisense hiển thị bất kỳ thuộc tính nào như vậy.

Trả lời

13

Khám phá http://flyingpies.wordpress.com/2009/08/01/17/. Nó có một hướng dẫn và một giải pháp phòng thu trực quan mẫu sử dụng C#, SOAP, WCF trên .NET 3.5.

+0

tôi thấy bài viết này một thời gian trước đây và nó sẽ làm việc cho WCF nhưng tôi đang sử dụng MVC và tôi đang sử dụng "AWSECommerceService" thay vì "AWSECommerceServicePortTypeClient". –

+0

Tôi đã kết thúc bằng cách sử dụng phiên bản sửa đổi của mã này và Tham chiếu dịch vụ thay vì một WebReference. Cảm ơn sự giúp đỡ của bạn, bạn phải đánh giá cao –

+0

+1 từ tôi. Tôi không có vấn đề này nhưng đây là mã tương tự mà tôi đang sử dụng cho cơ sở của mình để gọi API quảng cáo sản phẩm Amazon. – RichardOD

0

thư viện tự động Dấu hiệu này theo yêu cầu (Install-Package Nager.AmazonProductAdvertising) https://www.nuget.org/packages/Nager.AmazonProductAdvertising/

Ví dụ:

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

var wrapper = new AmazonWrapper(authentication, AmazonEndpoint.UK); 
var result = wrapper.Search("canon eos", AmazonSearchIndex.Electronics, AmazonResponseGroup.Large); 
Các vấn đề liên quan