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

上传数据,查询上传操作的工作状态,和处理上传操作返回的报告操作使用的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. IE8下的项目在IE11下某些功能无法实现的问题

    在IE8和IE11 下获取数据的时间进行判断有些不同,也要根据浏览器的版本判断分别实现 $(".btndelete").children().children().click(fu ...

  2. USB驱动开发

    1.usb特点 2.usb class 3.

  3. inux中tail命令---用于查看文件内容

    linux中tail命令---用于查看文件内容 最基本的是cat.more和less.1. 如果你只想看文件的前5行,可以使用head命令,如:head -5 /etc/passwd2. 如果你想查看 ...

  4. SharePoint 2013 实战碎嘴(ECMAScript客户端对象模型): 提示某个列表不存在

    简单情景描述1:(在Sharepoint 2013 Solution 中) 在相应的.aspx页面引入 一下两个.js文件: <script type="text/javascript ...

  5. Python之路第七天,基础(9)-面向对象(上)

    面向对象的编程思想 回想 我们所学过的编程方法: 面向过程:根据业务逻辑从上到下写堆叠代码. 函数式编程:将重复的代码封装到函数中,只需要写一遍,之后仅调用函数即可. 面向过程编程最易被初学者接受,其 ...

  6. windows程序设计读书笔记2——字符显示1

    本程序使用GetSystemMetrics获取windows各种图像选项,并输出字符到窗口中. #define WINVER 0x0500 #include <windows.h> #in ...

  7. 【原创】QT5-卸载精灵v1.0-卸载windows软件-简易版

    由于项目需求,需要实现卸载windows上的普通软件的小功能,实现起来还是比较简单的. 先发个图: 思路: 1.根据注册表的信息去打开应用程序,卸载也一样: 2.读桌面的快捷方式,根据快捷方式的指向路 ...

  8. 为什么开发人员对于PHP语言褒贬不一

    PHP 语言,作为服务器端开发的脚本语言,在网站开发方面非常有名.从1995年 Rasmus Lerdorf 创建之后,W3Techs 的调查显示在已知的服务端编程语言中,PHP 占了82%.其中不乏 ...

  9. python socket编程学习笔记2

     server.py: [服务端步骤]: 1.创建socket对象 2.将socket绑定到指定地址(bind) 3.监听连接请求(listen) 4.等待客户请求(accept) 5.处理请求(服务 ...

  10. HeadFirst设计模式读书笔记(3)-装饰者模式(Decorator Pattern)

    装饰者模式:动态地将责任附件到对象上.若要扩展功能,装饰者提东了比继承更有弹性的替代方案. 装饰者和被装饰对象有相同的超类型 你可以用一个或者多个装饰者包装一个对象. 既然装饰者和被装饰对象有相同的超 ...