什么是GAE更改为我的POST请求?

时间:2017-01-23 00:56:59

标签: python django google-app-engine

我正在使用外部API,但遗憾的是,它没有很好的错误记录功能。

我使用django 1.9.5并请求2.11.1。

当我在本地计算机上使用内置python服务器(python manage.py runserver)发出以下请求时,我得到了200状态代码,所以这样可以正常工作。

r = requests.post(
    'https://plazaapi.bol.com/offers/v1/%s' % product.ean, data=xml_to_send,
         headers=headers)

标题是日期字典,授权代码和内容类型

但是由于GAE上的请求根据本网站上的其他答案存在问题,我尝试使用requests_toolbelt monkeypatch和urlfetch,但我总是得到以下错误:

  

请求包含无效的身份验证标头

使用monkeypatch的代码:

import requests_toolbelt.adapters.appengine

requests_toolbelt.adapters.appengine.monkeypatch()

r = requests.post(
     'https://plazaapi.bol.com/offers/v1/%s' % product.ean, data=xml_to_send,
      headers=headers)

from google.appengine.api import urlfetch

r = urlfetch.fetch(
    url='https://plazaapi.bol.com/offers/v1/%s' % product.ean,
    payload=xml_to_send,
    method=urlfetch.POST,
    headers=headers,
    follow_redirects=False) # tried this, but has no effect.

我设置的标题是:

headers = {'Content-Type': 'application/xml',
           'X-BOL-Date': date,
           'X-BOL-Authorization': signature}
  

GAE是否正在更改我的请求并添加标头?如果是这样,我可以阻止它   从这样做?

0 个答案:

没有答案