首页 > 解决方案 > 带有嵌套在python中的curl请求

问题描述

我正在尝试将 curl 转换为带有请求的 python 帖子。我知道你通常会写 params = ('amount': '125') 但这似乎在 params 中有一个标题和一些嵌套,这让我很困惑:

curl -v -X POST https://sandbox.bluesnap.com/services/2/tools/param- 
encryption \
-H 'Content-Type: application/xml' \
-H 'Authorization: Basic dXNlcm5hbWU6cGFzc3dvcmQ=' \
-d '
<param-encryption xmlns="http://ws.plimus.com">
  <parameters>
    <parameter>
      <param-key>amount</param-key>
      <param-value>125.00</param-value>
    </parameter>
  </parameters>
</param-encryption>'

来自: https: //support.bluesnap.com/docs/creating-a-hosted-payments-page

标签: python

解决方案


您似乎正在尝试执行 SOAP 请求。试试下面的代码:

import requests
url="https://sandbox.bluesnap.com/services/2/tools/param-encryption"
headers = {
  "content-type": "text/xml",
  "authorization": "Basic dXNlcm5hbWU6cGFzc3dvcmQ="
}
body = """
<param-encryption xmlns="http://ws.plimus.com">
  <parameters>
    <parameter>
      <param-key>amount</param-key>
      <param-value>125.00</param-value>
    </parameter>
  </parameters>
</param-encryption>"""
response = requests.post(url,data=body,headers=headers)
print response.content

推荐阅读