通过curl命令分析http接口请求各阶段的耗时等

目录

      • 一、介绍
      • 二、功能
        • 1、-v 输出请求 响应头状态码 响应文本等信息
        • 2、-x 测试代理ip是否能在该网站使用
        • 3、-w 额外输出查看接口请求响应的消耗时间
        • 4、-o 将响应结果存储到文件里面
        • 5、-X post请求测试 (没测成功用的不多)

一、介绍

  • Curl是一个用于发送和接收请求的命令行工具和库,可以用来测试网站能否正常访问、网站URL响应什么状态码、网站响应文本内容、连接接口的请求时间等
  • curl 是常用的命令行工具,用来请求 Web 服务器,它的名字就是客户端(client)的 URL 工具的意思,如果熟练的话,完全可以取代 Postman 这一类的图形界面工具

二、功能

1、-v 输出请求 响应头状态码 响应文本等信息

  • curl -v http://httpbin.org/get
    在这里插入图片描述

2、-x 测试代理ip是否能在该网站使用

  • curl --connect-timeout 5 -x 58.118.19.119:8011 http://httpbin.org/get
    在这里插入图片描述

3、-w 额外输出查看接口请求响应的消耗时间

  • 新建curl-format.txt文件,文件内容如下
    在这里插入图片描述

    \n 
    time_namelookup: %{time_namelookup}\n 
    time_connect: %{time_connect}\n 
    time_appconnect: %{time_appconnect}\n 
    time_pretransfer: %{time_pretransfer}\n 
    time_starttransfer: %{time_starttransfer}\n 
    time_redirect: %{time_redirect}\n 
    time_total: %{time_total}\n 
    \n
    
  • curl输出的时间含义,其中time_total代表整个请求所消耗的时间

    time_namelookup:dns解析总共消耗的时间
    time_connect:从开始dns解析到tcp建联成功之间总共消耗的时间
    time_appconnect:从开始dns解析到ssl握手成功之间总共消耗的时间,以收到Finished包为准。
    time_pretransfer:从开始dns解析到发起http请求之间总共消耗的时间
    time_starttransfer:从开始dns请求到服务器响应首个字节之间总共消耗的时间
    time_total:整个请求所消耗的时间,包含dns解析、tcp握手和ssl握手的时间
    
  • 然后在当前curl-format.txt文件所在路径下,输入命令curl -w "@curl-format.txt" http://httpbin.org/get
    在这里插入图片描述

  • 更多介绍参考文档
    在这里插入图片描述

4、-o 将响应结果存储到文件里面

  • curl -o resp.html http://httpbin.org/get
    在这里插入图片描述

5、-X post请求测试 (没测成功用的不多)

  • post请求类型application/x-www-form-urlencoded,使用-d参数以后,HTTP 请求会自动加上标头Content-Type : application/x-www-form-urlencoded。并且会自动将请求转为 POST 方法,因此可以省略-X POST,链接
    curl  http://11.120.12.89:6666/sengMsg -X POST -d "parameterName1=parameterValue1&parameterName2=parameterValue2"
    
  • post请求类型application/json , 链接
    curl  http://11.120.12.89:6666/sengMsg -X POST -H "Content-Type:application/json" -d '{"parameterName1":"parameterValue1","parameterName2":"parameterValue2"}'
    
  • 更多参考文档:更多介绍参考文档

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/103542.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Python实现机器学习(上)— 基础知识介绍及环境部署

前言:Hello大家好,我是小哥谈。本门课程将介绍人工智能相关概念,重点讲解机器学习原理机器基本算法(监督学习及非监督学习)。使用python,结合sklearn、jupyter-notebook进行编程,介绍iris、匹马…

使用Android原生制作毛玻璃效果图片

毛玻璃效果,也被称为模糊效果,是许多现代应用中流行的一种视觉效果。在 Android 中,我们可以通过多种方式实现该效果。本文将探讨如何使用 Android 原生的 Bitmap 类和 RenderScript 来实现毛玻璃效果。 1. 准备工作 首先,你需要…

中国有多少个省?【最新】

2023.09.09 中华人民共和国省级行政区是指中国现行的34个一级行政区, 包括23个省(河北、山西、黑龙江、吉林、辽宁、江苏、浙江、安徽、福建、江西、山东、河南、湖北、湖南、广东、海南、四川、贵州、云南、陕西、甘肃、青海、台湾)、 5个…

2023数学建模国赛B题完整论文来啦!(含一二问求解代码及三四问仿真模拟代码)

大家好呀,从昨天发布赛题一直到现在,总算完成了全国大学生数学建模竞赛B题完整的成品论文。 本论文可以保证原创,保证高质量。绝不是随便引用一大堆模型和代码复制粘贴进来完全没有应用糊弄人的垃圾半成品论文。 说实话团队通宵一直到现在做…

如何查看APK的MD5签名及无法显示MD5签名的解决办法

https://blog.asroads.com/post/3358e0c4.html 之前的文章内已经介绍了不少的关于Android环境下出Apk 包遇到的各种填坑操作,以及一些设置小技巧,但坑是未知的,今天又踩一个坑,这次的问题是和电脑环境有关的。于是下面记录一下。 …

Arthas 排查JVM问题总结

一、安装 在Arthas官网:https://arthas.aliyun.com/中下载安装包。 执行java -jar arthas-boot.jar就可以启动。 二、常见命令 dashboard:查看JVM全局概览,包括线程、堆内存、GC还有系统信息等 thread:常见命令,查看…

原生JavaScript+PHP多图上传实现

摘要 很多场景下需要选择多张图片上传&#xff0c;或者是批量上传以提高效率&#xff0c;多图上传的需求自然就比较多了&#xff0c;本文使用最简单的XMLHttpRequest异步上传图片。 界面 上传示例 代码 index.html <!DOCTYPE html> <html><head><titl…

1987-2021年全国31省专利申请数和授权数

1987-2021年全国31省国内三种专利申请数和授权数 1、时间&#xff1a;1987-2021年 2、来源&#xff1a;整理自国家统计局、科技统计年鉴、各省年鉴 3、范围&#xff1a;31省市 4、指标&#xff1a;国内专利申请受理量、国内发明专利申请受理量、国内实用新型专利申请受理量…

Logstash--logstash-syslog-putput插件安装及使用

这篇文章讲的是如何在Linux服务器上安装logstash-syslog-output插件及使用&#xff0c;是集网上之大成&#xff0c;择选出一条正确有效简短的路。 安装 插件logstash-syslog-output&#xff0c;如果你的logstash没有&#xff0c;则需要安装。 查看logstash是否含有这个插件的…

Vue+Element Progress 进度条显示文字 %修改,使用format方法显示文字可自定义

需求 要实现这样子的 将进度条里显示的文字 后的 %去掉 主要用到 format 方法 代码 <el-progress :text-inside"true" :stroke-width"30" :format"format":percentage"usageA"></el-progress>methods: {format(percent…

JVM调优

JVM测试 jstat命令&#xff1a; Java的jstat命令使用详解 jstat -gcutil vmid jinfo命令&#xff1a; jinfo vmid Xms为2G&#xff0c;而Xmx约为30G jmap命令&#xff1a; jmap -heap vmid 串行GC &#xff0c;Serial GC Concurrent Mark-Sweep GC &#xff1a;CMS回收器…

Android SDK 上手指南||第十一章 虚拟与物理设备

第十一章 虚拟与物理设备 在之前的文章里&#xff0c;大家已经了解了Android项目当中的基本元素、接触了用户界面的设计以及数据存储方案。接下来&#xff0c;我们将一同探索如何在物理及虚拟设备上运行自己的应用程序并与之互动。在系列文章的下一篇中&#xff0c;我们将分步…