📜  postman中的POST请求

📅  最后修改于: 2021-01-08 02:07:13             🧑  作者: Mango

邮递员中的POST请求

帖子是HTTP方法,例如GET。当其他信息需要发送到请求主体内的服务器时,我们使用此方法。通常,当我们提交POST请求时,我们希望在服务器上进行一些更改,例如更新,删除或插入。

使用POST请求的最好例子之一是Facebook的登录页面或其他站点的登录页面。您会将您的个人信息(例如密码)发送到服务器。服务器将创建一个具有相同信息的新帐户,并且该帐户将信息永久添加到Facebook服务器上。

POST请求是一种基本方法,该方法通常在用户希望向服务器发送一些敏感数据(例如发送表格或一些机密数据)时使用。

POST请求的重点:

  • POST请求不会使用cookie。
  • POST请求不会保留在浏览器的历史记录中。
  • 我们无法为POST请求添加书签。
  • POST请求中没有数据长度限制。

在则要调用该端点,仅需要POST HTTP动词。

首先让我们检查一下GET请求是否有POST端点。

POST端点上的GET请求

在这里,我们有一个用于注册新客户的API:

http://restapi.demoqa.com/customer/register

在邮递员端点栏中输入URL ,然后按发送。然后从下拉列表中选择GET方法。

请参阅以下响应:

请参阅HTTP状态代码,并且您将收到“ 405方法不允许”错误代码。这意味着我们要求使用错误方法的端点。在“漂亮”选项卡中,您还可以看到错误错误。

这意味着我们选择了错误的方法类型。现在,让我们尝试更改方法的类型,看看是否能获得正确的响应。

没有正文的发布请求

首先,将方法类型从GET更改为POST,然后单击Send按钮。

现在,请参阅响应部分。

如上图所示,此处的400 Bad Request表示未找到请求和服务器参数匹配以获得响应。并且在响应正文中,“无效的帖子数据”表示输入的帖子数据无效。

因此,我们需要在请求正文中以正确的格式添加信息。

将请求正文添加到发布请求中-为此,选择“正文”选项卡。

现在,在“正文”选项卡中,选择“原始”,然后从下拉菜单中选择“ JSON”作为格式类型,如下图所示。这样做是因为我们需要以服务器期望的适当格式发送请求。

在我的示例中,服务器需要一个包含新用户信息的json主体。这是一个简单的示例:

{
   "FirstName"  : "value",
   "LastName"  : "value",
   "UserName" : "value",
   "Password"  : "value",
   "Email"        : "value"
 }

将以上示例复制并粘贴到邮递员请求正文中。只需将属性值更改为所需值,如以下示例所示:

最后,按发送并查看响应正文和响应状态。

这里的状态码是200 OK。这意味着服务器批准了该请求,我们收到了肯定的答复。错误“用户已存在”表示数据库中数据已存在。

让我们输入其他值并检查响应状态:

按发送并检查响应:

在这里,“操作成功完成”表示您的条目已成功创建,并且POST请求已成功完成。

发送身体数据

从现在开始,您知道我们每当需要添加或更新结构化数据时都需要发送带有请求的主体数据。

选择POST请求方法,然后转到“正文”选项,我们在其中具有用于发送数据的不同选项:

这里您有:

  • 没有
  • 表格数据
  • x-www-form-urlencoded
  • 生的
  • 二元
  • GarphQL

表格数据

form-data发送表单的数据。例如您在填写表格时输入的信息。要发送这些详细信息,请将它们写为键值对。在这里,键是条目的名称,值是您要发送的条目的值。请按照以下步骤操作:

  • 选择表单数据。

  • 添加键值对。

x-www-form-urlencoded

它的工作方式类似于表单数据。两者之间的唯一区别是,当您通过x-www-form-urlencoded发送数据时,URL已编码。编码表示传输的数据已转换为各种字符,因此未经授权的人员无法识别该数据。

生的

将正文发送到POST方法时,这是一个非常有用的选项。在这里,主体数据将以比特流的形式呈现。

在上面的示例中,我们已经讨论了原始的。因此,我们将不再讨论。

二元

二进制用于以其他格式发送数据。如文件,图像等。要使用此选项,请选择二进制文件,然后单击“选择文件”以浏览系统中的任何文件。

GraphQL

通过此选项,可以通过选择请求正文中的GraphQL选项卡在邮递员请求中发送GraphQL查询。

在这里,您需要在QUERY部分中输入代码,并在GRAPHQL VARIABLES部分中输入任何变量。