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

上传数据,查询上传操作的工作状态,和处理上传操作返回的报告操作使用的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. NPOI导出多张图片到Excel

    常用NPOI导出数据到excel,但没有试过如何导出图片.NPOI最大的特点就是不依赖于Excel组件,服务端不需要安装Excel.在单元格中插入图片主要是用HSSFClientAnchor对象.他有 ...

  2. Python Challenge 过关心得(0)

    最近开始用Openerp进行开发,在python语言本身上并没有什么太大的进展,于是决定利用空闲时间做一点python练习. 最终找到了这款叫做Python Challenge(http://www. ...

  3. 可获取公网IP的网址

    由于代理检验需要,现在小站经受不住大流量测试,于是多收集了一些. http://1111.ip138.com/ic.asp, http://ip.360.cn/IPShare/info, http:/ ...

  4. QT:轻松获取网页源码

    获取网页源码的小例子,代码很简单,就不多作解释了. 不过一定要注意网页的编码问题,否则会出现乱码的!!! #include <QtCore> #include <QtNetwork& ...

  5. Easy UI treegrid 分页实例

    转自:http://www.jeasyuicn.com/jquery-easyui-treegird-page-processing.html

  6. python图片小爬虫

    import re import urllib import os def rename(name): name = name + '.jpg' return name def getHtml(url ...

  7. linux命令之mount

    熟悉linux的同学都应该知道mount命令.在linux中,一切皆文件.硬盘分区都是以文件目录的方式存在. 如果我们想访问移动硬盘,U盘等我们必须将这些设备mount到我们linux文件系统中某个目 ...

  8. get方式中文乱码问题

    <a target="_blank" href="ftpFileAction!downloadFile.action?filename=测试.xml"&g ...

  9. Jam's math problem(思维)

    Jam's math problem Submit Status Practice HDU 5615   Description Jam has a math problem. He just lea ...

  10. CSDN博文大赛火爆开启

    俗话说的好,程序猿会写博,谁也挡不住! 是不是每一个开发人员都能写出好博文,这个非常难说,但能够肯定的是,能写出好博文的,一定是优秀的程序猿! 写作即思考,养成写博文的习惯,既能帮自己整理技术思路,也 ...