【发布时间】:2019-04-23 20:40:11
【问题描述】:
我有一个如下所示的请求:
data = {
'USER': params['PARTNER'],
'PWD': params['PWD'],
'RETURNURL': 'https://my-site.com/',
'CURRENCY': 'USD',
}
request = requests.post(url=URL, data=data, verify=False)
当我在 shell 中以相同的 cURL 命令运行此命令时,完全没有问题。但是当我通过请求执行此操作时,似乎有些东西被 RETURNURL 参数弄乱了。它完美地保存在 cURL 中,但是当从请求处理时,当我在请求的另一端看到它时,它最终看起来像这样,而事情就是不起作用:
https%3A%2F%2Fmy-site.com%2F
提前感谢,一直在这!
在 cURL 中成功使用的实际命令是这样的:
curl https://pilot-payflowpro.paypal.com \
-s \
--insecure \
-d PARTNER=PayPal \
-d PWD=MyPassword \
-d VENDOR=MyMerchantID \
-d USER=MyMerchantID \
-d TENDER=C \
-d ACCT=5105105105105100 \
-d TRXTYPE=S \
-d EXPDATE=1221 \
-d RETURNURL=https://my-site.com/
-d AMT=1.00
请注意,一切都运行良好,但我提交的参数是一个 URL,它根本无法正常工作,并且格式全乱了。
【问题讨论】:
-
显示你正在使用的 curl 命令。什么在处理另一端的数据?它是您控制的应用程序吗?
-
@DanielRoseman 我正在访问 PayPal API,将在 30 秒内更新帖子并提供更多信息
-
好的,但是你怎么知道 PayPal 是如何接收 URL 的?
-
@DanielRoseman 好吧,RETURNURL 参数不是必需的,所以如果我把它拿出来,一切正常。但我需要那里的参数来为我的用例定制功能。
-
此处与此问题类似 - stackoverflow.com/questions/23496750/…
标签: python curl python-requests