Python 雅虎!商户结帐API问题

Python 雅虎!商户结帐API问题,python,xml,yahoo,yahoo-api,Python,Xml,Yahoo,Yahoo Api,我正在尝试与雅虎整合s基于Django的web应用程序中现有商户帐户的签出API。我已经成功地集成了他们的catalogapi,但由于某些原因,我根本无法让Checkout API工作。我根据他们文档中的示例编写了一个XML请求,但它总是简单地返回一个10009 Auth Required错误。我已经确认我的合作伙伴帐户确实有正确的授权,我只是不明白为什么会出现这个错误。我不认为这是一个格式错误的请求,因为当我复制并粘贴他们的示例请求时,我得到了完全相同的结果(显然,更改API令牌等等) 这是我

我正在尝试与雅虎整合s基于Django的web应用程序中现有商户帐户的签出API。我已经成功地集成了他们的catalogapi,但由于某些原因,我根本无法让Checkout API工作。我根据他们文档中的示例编写了一个XML请求,但它总是简单地返回一个10009 Auth Required错误。我已经确认我的合作伙伴帐户确实有正确的授权,我只是不明白为什么会出现这个错误。我不认为这是一个格式错误的请求,因为当我复制并粘贴他们的示例请求时,我得到了完全相同的结果(显然,更改API令牌等等)

这是我的请求的样子(已清除存储ID和令牌):

这就是我的合作伙伴API访问的样子:

这里有点胡乱猜测,但值得一试

您声明了一个XML名称空间,但根本不使用它。我怀疑你想要:

<ystorewsRequest xmlns="urn:yahoo:sbs:ystorews">
  <Version>1.0</Version>
  <StoreID>{storeid}</StoreID>
  <SecurityHeader>
        <PartnerStoreContractToken>{token}</PartnerStoreContractToken>
  </SecurityHeader>
  <Verb>create</Verb>
  <ResourceList>
    <CheckoutBasket>
      <ShoppingCart>
        <Item>
          <ID>foo</ID>
          <Quantity>5</Quantity>
        </Item>
      </ShoppingCart>
    </CheckoutBasket>
  </ResourceList>
</ystorewsRequest>

1
{storeid}
{token}
创造
福
5.

请注意根元素中缺少ystorews名称空间。

这里是胡乱猜测,但值得一试

您声明了一个XML名称空间,但根本不使用它。我怀疑你想要:

<ystorewsRequest xmlns="urn:yahoo:sbs:ystorews">
  <Version>1.0</Version>
  <StoreID>{storeid}</StoreID>
  <SecurityHeader>
        <PartnerStoreContractToken>{token}</PartnerStoreContractToken>
  </SecurityHeader>
  <Verb>create</Verb>
  <ResourceList>
    <CheckoutBasket>
      <ShoppingCart>
        <Item>
          <ID>foo</ID>
          <Quantity>5</Quantity>
        </Item>
      </ShoppingCart>
    </CheckoutBasket>
  </ResourceList>
</ystorewsRequest>

1
{storeid}
{token}
创造
福
5.

请注意,根元素中缺少ystorews名称空间。

证明Yahoo!存在内部问题!这些都阻止了这一切的发生。在我联系了他们的小企业支持团队后,他们解决了问题,我的代码突然开始工作


如果其他人遇到类似的问题,我发现找到他们的最好方法就是通过他们的推特帐户:。

事实证明,雅虎存在内部问题!这些都阻止了这一切的发生。在我联系了他们的小企业支持团队后,他们解决了问题,我的代码突然开始工作


如果其他人遇到类似的问题,我发现找到他们的最好方法是通过他们的Twitter帐户:。

XML是否会导致这样的错误值得怀疑。代码是什么样子的?它肯定不是代码,我使用完全相同的代码提交请求,带有CatalogAPI,工作正常。不管问题是什么,都和我送他们的东西有关。如果我删除了一个标签,或者导致它的格式不正确,我会得到一个错误响应,告诉我我丢失了标签或者标签不正确。不过我使用的是请求库,所以代码看起来是这样的:
response=Requests.post(endpoint,data=request)
。XML是否会导致这样的错误值得怀疑。代码是什么样子的?它肯定不是代码,我使用完全相同的代码提交请求,带有CatalogAPI,工作正常。不管问题是什么,都和我送他们的东西有关。如果我删除了一个标签,或者导致它的格式不正确,我会得到一个错误响应,告诉我我丢失了标签或者标签不正确。不过,我使用的是请求库,所以代码看起来是这样的:
response=Requests.post(endpoint,data=request)
。遗憾的是,事实并非如此。最初,我没有名称空间(CatalogAPI中不需要名称空间),但当我可以让请求工作时,我添加了名称空间,以使其尽可能与他们的示例请求一致。我创建的请求与他们的示例完全相同,除了我的店铺id和令牌之外:(也就是说,当我无法让请求工作时,我添加了名称空间…遗憾的是,不是这样。最初我没有名称空间(Catalog API中不需要它),但当我可以让请求生效时,我添加了它,以使其尽可能与他们的示例请求一致。我创建的请求与他们的示例完全相同,除了我的商店id和令牌之外:(也就是说,当我无法让请求正常工作时,我在名称空间中添加了…我遇到了同样奇怪的身份验证问题,他们的文档和支持部分没有太大帮助。我在使用PHP代码时遇到了相同的错误,我通过电子邮件联系了Yahoo Small Business Customer Care,他们说“我们在后端做了一些调整。”然后错误消失了。我遇到了同样奇怪的身份验证问题,他们的文档和支持部分没有太大帮助。我在使用PHP代码时遇到了同样的错误。我通过电子邮件联系了Yahoo Small Business Customer Care,他们说“我们在后端做了一些调整。“然后错误消失了。
<ystorewsRequest xmlns="urn:yahoo:sbs:ystorews">
  <Version>1.0</Version>
  <StoreID>{storeid}</StoreID>
  <SecurityHeader>
        <PartnerStoreContractToken>{token}</PartnerStoreContractToken>
  </SecurityHeader>
  <Verb>create</Verb>
  <ResourceList>
    <CheckoutBasket>
      <ShoppingCart>
        <Item>
          <ID>foo</ID>
          <Quantity>5</Quantity>
        </Item>
      </ShoppingCart>
    </CheckoutBasket>
  </ResourceList>
</ystorewsRequest>