MWS Financial Services客户端库返回空异常

时间:2018-07-19 08:32:41

标签: c# console-application amazon-mws

我制作了一个非常简单的控制台应用程序,它将运行MWS服务并返回包含财务事件列表的XML文档。在开始时,第14行'client.ListFinancialEvents(request)'遇到异常,它只显示null,没有其他信息说明为什么它不起作用。

string accessKey = "AccessKey";
string secretKey = "SecretKey";
string appName = "AppName";
string appVersion = "1.0";
string serviceURL = "http://mws.amazonservices.com/Finances/2015-05-01/";
try
{
    MWSFinancesServiceConfig config = new MWSFinancesServiceConfig();
    config.ServiceURL = serviceURL;
    MWSFinancesServiceClient client = new MWSFinancesServiceClient(accessKey, secretKey, appName, appVersion, config);
    ListFinancialEventsRequest request = new ListFinancialEventsRequest();
    request.SellerId = "SellerID";
    request.AmazonOrderId = "111-111111111-111111111";
    ListFinancialEventsResponse response = client.ListFinancialEvents(request);
    Console.WriteLine("Response:");
    ResponseHeaderMetadata rhmd = response.ResponseHeaderMetadata;
    Console.WriteLine("RequestId: " + rhmd.RequestId);
    Console.WriteLine("Timestamp: " + rhmd.Timestamp);
    string responseXml = response.ToXML();
    Console.WriteLine(response.ResponseHeaderMetadata);
}
catch (Exception e)
{
    Console.WriteLine("Error: " + e.Message);
}
Console.ReadLine();

用作参考的DLL是从here下载的。我已经尝试过MWS Scratchpad,值工作正常。发生此异常可能是什么可能的问题,以及如何解决此问题?

1 个答案:

答案 0 :(得分:0)

如果将来有人遇到类似问题,我将发布我自己问题的答案。

我犯了一个非常愚蠢的错误,花了一个星期才弄清楚。在服务URL中,应该使用“ https:// ...”而不是“ http:// ...”,并且可以正常运行。它在“ responseXml”变量中返回完整的XML作为响应。