apipost 使用脚本发送一个接口请求

举报
雨中人 发表于 2021/08/27 11:03:07 2021/08/27
【摘要】 利用预执行脚本发送一个请求在文档 “预执行脚本” 中,我们了解到,预执行脚本的作用主要是:编写JS函数等实现复杂计算;变量的打印定义、获取、删除、清空环境变量定义、获取、删除、清空全局变量获取请求参数动态添加、删除一个header请求参数动态添加、删除一个query请求参数动态添加、删除一个body请求参数发送HTTP请求本文主要介绍如何在预执行脚本里预先发送一个请求。使用场景我们可以在预执...

利用预执行脚本发送一个请求

在文档 “预执行脚本” 中,我们了解到,预执行脚本的作用主要是:

  • 编写JS函数等实现复杂计算;
  • 变量的打印
  • 定义、获取、删除、清空环境变量
  • 定义、获取、删除、清空全局变量
  • 获取请求参数
  • 动态添加、删除一个header请求参数
  • 动态添加、删除一个query请求参数
  • 动态添加、删除一个body请求参数
  • 发送HTTP请求

本文主要介绍如何在预执行脚本里预先发送一个请求。

使用场景

我们可以在预执行脚本里先发送一个请求,并将请求结果绑定到变量,然后在当前接口的请求参数中使用这个变量。

发送请求的方法 $.ajax

APIPOST内置支持 jQuery 的$.ajax方法,其参数和使用方法同浏览器下的 $.ajax 完全一致。

不过请注意 :在APIPOST预执行脚本中使用该方法时,注意 async 参数最好设置成 false,否则会因为异步问题出现不必要的错误。

请求示例

1、发送一个简单的GET请求

您可以在ApiPost客户端,通过以下脚本实现一个简单的请求。

在ApiPost 预执行脚本里发送一个请求

$.ajax({
    method:"GET",
    url:"https://echo.apipost.cn/get.php",
    async:false,
    success:function(response){
            console.log(response);
            apt.variables.set("bigint", response.bigint);
        }
})

以上脚本是一个很初级的请求脚本,含义如下:

向指定URL发送一个GET请求,并将响应数据(json)的bigint赋给环境变量bigint。

这样的话,当前接口就可以在请求参数里使用变量bigint了。如图:

image.png

2、发送一个content-type为appicateion-json 的请求

$.ajax({
    url:"https://echo.apipost.cn/get.php",
    async:false,
    "content-type":"appicateion-json",
    data:JSON.stringify({"email":"admin@admin.com", "password":"密码"}),
    success:function(response){
            console.log(response);
            apt.variables.set("bigint", response.bigint);
        }
})

注意:content-type:appicateion-json时,请求json对象参数需要用 JSON.stringify 处理成json字符串再发送。

3、发送一个content-type为x-www-form-urlencoded 的请求

$.ajax({
    url:"https://echo.apipost.cn/get.php",
    async:false,
    "content-type":"application/x-www-form-urlencoded",
    data:{"email":"admin@admin.com", "password":"密码"},
    success:function(response){
            console.log(response);
            apt.variables.set("bigint", response.bigint);
        }
})

其他请求方式雷同,这里就不再赘述了。

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。