【问题标题】:Python - POST multiple headers [closed]Python - POST多个标题[关闭]
【发布时间】:2014-09-23 07:05:52
【问题描述】:

我正在尝试发布一些 xml 以使用 python 以编程方式创建论坛主题。基本上我需要发布带有以下标题的xml:

授权:基本 内容类型:application/atom+xml

这是我正在尝试使用的代码,但它需要单个 request.post() 中的两个标头:

import base64
from requests.auth import HTTPBasicAuth
import requests

xml = "<xml code here>"
url = 'https://server/forums/atom/forum?id=b7915594-5c46-4ae6-916a-be869aabb327'
userID = 'userid'
password = 'password'

header = {"Content-type": "application/atom+xml"}

r = requests.post(url, headers=header, auth=HTTPBasicAuth(userID,password), data=xml)

非常感谢任何帮助。 提前谢谢你

【问题讨论】:

  • 你没有描述为什么你认为这不起作用

标签: python http-post python-requests


【解决方案1】:

怎么了

header = {"Authorization": "Basic", "Content-type": "application/atom+xml"}

?

【讨论】:

  • 同意。 requests docs 只是说将 dict 传递给 headers 参数。
  • 感谢您的回答。请求需要发布授权令牌(示例):“Authorization: Basic dG9ueS5tXYJKeWz8oLsfezxeqUtDgh2HjBBdeDfse==”,而不仅仅是“Authorization: Basic”
  • 好的,header = { "Authorization": "Basic dG9ueS5tXYJKeWz8oLsfezxeqUtDgh2HjBBdeDfse==", "Content-type": "application/atom+xml"} 有什么问题?
  • 感谢您的回复。我需要在发布时传递凭据,而不是将令牌添加到标题中...换句话说,我应该添加我的用户 ID/密码,然后在标题中生成令牌,而无需手动将其添加到标题中。跨度>
  • 这不是你的问题。
猜你喜欢
  • 2010-09-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-12-26
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多