如何发送带有python和动态值的发布请求?

时间:2020-09-28 21:43:15

标签: python http post python-requests

在过去的几个小时中,我一直在寻找周围的事物,也许是因为我缺乏使用python的经验。我在网上找到了此代码:

import requests # you have to install this library, with pip for example

# define your custom headers (as many as you want)

headers = {
  'X-Prototype-Version': '1.7.2'
}

# define your URL params (!= of the body of the POST request)

params = {
  'your_first_param': 'its_value',
  'your_second_param': 'its_value'
}

# define the body of the POST request

data = {
  'message' : 'your message'
}

# send the POST request

response = requests.post('https://example.com/index.php', params=params, data=data, headers=headers)

# here is the response

print response.text

我想做的是发送一个HTTP POST请求,请求看起来像这样:

https://example.com/dashboard/api?to={PHONE NUMBER}&from={SENDER ID}&message={TEXT}&email={YOUREMAIL}&api_secret={API SECRET}

我有以下参数:收件人,发件人,消息,电子邮件,api_secret

电子邮件和api_secret应该硬编码到代码本身中。 因此,我想做的是从用户那里收集以下信息:

收件人,发件人,消息

将其接收并作为POST请求发送到那里的网址。

问题是,我不知道如何在我的代码中实现它。非常感谢您的帮助。 谢谢!

1 个答案:

答案 0 :(得分:0)

您已经提到:

# send the POST request

response = requests.post('https://example.com/index.php', params=params, data=data, headers=headers)

因此,只需创建一个params变量,如下所示:

params = {
    'from':from,
    'to':to,
    'message':message,
    'email':hardCodedEmail,
    'api_secret':hardCodedSecret,
}

并使用requests.post(url,params=params)发布。

如果您还有一些要发布的数据,则可以类似地创建字典,并添加data参数。