前面介绍了设置服务和构造请求,现在介绍提交请求。

上传数据,查询上传操作的工作状态,和处理上传操作返回的报告操作使用的Amazon API 分别为:SubmitFeed(),FeedSubmissionListRequest(),GetFeedSubmissionResult().

  • SubmitFeed()-- 提交请求,代码示例:
  #region AmazonSubmitFeed
/// <summary>
/// 提交请求
/// </summary>
public void AmazonSubmitFeed(string fileName, string feedType)
{
MarketplaceWebServiceClient service = GetService();
SubmitFeedRequest request = GetSubmitFeedRequest(fileName, feedType);
try
{
SubmitFeedResponse response = service.SubmitFeed(request);
}
catch (MarketplaceWebServiceException ex)
{
#region Log Error #endregion
}
}
#endregion

大家可以看到上面先调用设置服务的方法,随后通过GetSubmitFeedRequest(fileName, feedType);构造请求,最后是提交请求,返回的response中有我们需要的feedSubmmissionId,我们需要将其保存下来。

  • GetFeedSubmissionList()--查询上传操作的工作状态,代码示例:
  #region FeedSubmissionList
/// <summary>
/// 提交请求
/// </summary>
public void FeedSubmissionList(string feedSubmmissionId)
{
MarketplaceWebServiceClient service = GetService();
GetFeedSubmissionListRequest request = FeedSubmissionListRequest(feedSubmmissionId); try
{
GetFeedSubmissionListResponse response = service.GetFeedSubmissionList(request);
}
catch (MarketplaceWebServiceException ex)
{
#region Log Error #endregion
}
}
#endregion

上面的示例中我们通过调用GetFeedSubmissionList接口得到处理结果,处理结果有很多种,经常遇到的有_SUBMITTED_,_IN_PROGRESS_,_DONE_

其中_SUBMITTED_表示已收到请求,但尚未开始处理。

_IN_PROGRESS_表示请求正在处理。

_DONE_表示请求已处理。

注意:当结果FeedProcessingStatus==_DONE_时,并不代表我们上传操作被Amazon 服务器接受了,仅仅代表此次操作已经完成,不代表此次操作成功。

FeedProcessingStatus 枚举可以在官网查到 http://docs.developer.amazonservices.com/zh_CN/feeds/Feeds_FeedProcessingStatus.html#Feeds_FeedProcessingStatus

  • GetFeedSubmissionResult()--得到处理报告,示例代码:
  #region FeedSubmissionResult
/// <summary>
/// 提交请求
/// </summary>
public void FeedSubmissionResult(string feedSubmmissionId)
{
MarketplaceWebServiceClient service = GetService();
GetFeedSubmissionResultRequest request = FeedSubmissionResultRequest(feedSubmmissionId); try
{
GetFeedSubmissionResultResponse response = service.GetFeedSubmissionResult(request);
}
catch (MarketplaceWebServiceException ex)
{
#region Log Error #endregion
}
}
#endregion

上面的代码中,调用GetFeedSubmissionResult接口,将处理报告以xml(上一节构造请求的时候,已经设置)的形式保存在本地。

处理报告会有比较仔细的提示,告诉我们出错的什么地方,只要按此修改即可。

Amazon MWS 上传数据 (三) 提交请求的更多相关文章

  1. Amazon MWS 上传数据 (一) 设置服务

    Amazon 上传数据的流程为: 通过 SubmitFeed 操作.加密标头和所有必需的元数据(包括 FeedType 的值在内),来提交 XML 或文本型数据文件.正如亚马逊 MWS的所有提交内容一 ...

  2. Amazon MWS 上传数据 (二) 构造请求

    上一篇文章提到了Amazon 上传数据有三个步骤,但是每个步骤都需要构造服务和构造请求,服务是一样的,请求各不相同:这个很容易理解,这三个步骤都需要和Amazon服务器交互,所以他们的服务构造是一样的 ...

  3. Amzon MWS API开发之 上传数据

    亚马逊上传数据,现有能操作的功能有很多:库存数量.跟踪号.价格.商品....... 我们可以设置FeedType值,根据需要,再上传对应的xml文件即可. 下面可以看看FeedType类型 这次我们拿 ...

  4. Streamr助你掌控自己的数据(1)——教你5分钟上传数据至Streamr

    博客说明 所有刊发内容均可转载但是需要注明出处. 教你5分钟上传数据至Streamr 本系列文档主要介绍怎么通过Streamr管理自己的DATA,整个系列包括三篇教程文档,分别是:教你5分钟上传数据至 ...

  5. TortoiseGit和msysGit安装及使用笔记(windows下使用上传数据到GitHub)[转]

    TortoiseGit和msysGit安装及使用笔记(windows下使用上传数据到GitHub) Git-1.7.11-preview+GitExtensions244SetupComplete+T ...

  6. springBoot+ vue+ Element-ui实现合并多图上传(一次请求多张图片)

    这次上传使用的是Elemet-ui的uoload上传组件,组件预留的钩子回调还是比较充足的. 1:  实现多图上传主要用到以下两个属性: 下面讲一下属性使用: <el-upload :actio ...

  7. 文件上传的三种模式-Java

    文件上传的三种方式-Java 前言:因自己负责的项目(jetty内嵌启动的SpringMvc)中需要实现文件上传,而自己对java文件上传这一块未接触过,且对 Http 协议较模糊,故这次采用渐进的方 ...

  8. ueditor富文本上传图片的时候报错"未找上传数据"

    最近因为需求所以在ssh项目中使用了Ueditor富文本插件,但是在上传图片的时候总是提示“未找到上传数据”,之后百度了好久终于弄明白了.因为Ueditor在上传图片的时候会访问controller. ...

  9. ASIHTTPRequest框架使用总结系列之阿堂教程5(上传数据)

    在上篇文章中,阿堂和网友们分享了如何用ASIHTTPRequest框架下载数据的实例,本篇阿堂将数据介绍如何用ASIHTTPRequest框架上传数据的应用实例.       数据上传是通过ASIHT ...

随机推荐

  1. make clean与make distclean的区别

    make clean仅仅是清除之前编译的可执行文件及配置文件. 而make distclean要清除所有生成的文件. Makefile 在符合GNU Makefiel惯例的Makefile中,包含了一 ...

  2. flask-script 安装问题

    > 昨天开始看 flask,第二章最后提到使用 Flask-Script 支持命令行选项,但是用书上的方法安装却出现了问题. 错误信息: 注意最后两行: Could not find a ver ...

  3. nginx安装及配置支持php的教程(全)

    本文的实验环境为:Centos4.5,nginx版本为:nginx-0.7.26   pcre-7.8.tar.gz  正则表达式下载地址:ftp://ftp.csx.cam.ac.uk/pub/so ...

  4. 做为一个Java程序员,你需要哪些傍身的技能?

    最近总有些断断续续的思考,想想从我入行以来,我到底学会了什么,做成过什么,以后要做什么,如何提升自己······· 工作3年了,常听人说3年,5年,10年是程序员的坎,每过一个都会有新的想法,新的改变 ...

  5. Jquery基础之ajax

    ajax是Asynchronous JavaScript and XML(异步JavaScript和XML)的简称,ajax并不是单一的技术而是利用一系列交互网页应用相关的技术形成的结合体,ajax揭 ...

  6. Xmemcached

    http://blog.csdn.net/yuwenruli/article/details/8478201

  7. hdu 1754 I Hate It_线段树

    题意:略 思路:套hdu1166模版改改就行了,要注意的是,网上有的代码是错的,还贴出来... #include <iostream> #include<cstdio> #in ...

  8. 解决:Incorrect line ending: found carriage return (\r) without corresponding newline (\n)

    解决方案: ——clean一下项目,这个方法可以解决 . 此方案经过验证OK

  9. AJAX提交到Handler.ashx一般处理程序返回json数据 (字符串拼接方式)

    <%@ WebHandler Language="C#" Class="Handler" %> using System; using System ...

  10. MD5和SHA512Managed ——哈希算法

    本文来自:http://www.cnblogs.com/chuncn/archive/2008/02/26/1082418.html C#的哈希 哈希算法是啥?哈希英文hash,是一种数学算法,它能把 ...