CURL命令 : GET、POST请求、文件下载等常用命令

2023-10-29


1. curl介绍

curl 是常用的命令行工具,用来请求 Web 服务器。它的名字就是客户端(client)的 URL 工具的意思。

2. 直接发送请求 (Get)

默认是Get请求

curl URL 

相当于发送一个GET请求,curl默认就是发送GET请求

测试:

curl https://jsonplaceholder.typicode.com/posts/1

{
  "userId": 1,
  "id": 1,
  "title": "sunt aut facere repellat provident occaecati excepturi optio reprehenderit",
  "body": "quia et suscipit\nsuscipit recusandae consequuntur expedita et cum\nreprehenderit molestiae ut ut quas totam\nnostrum rerum est autem sunt rem eveniet architecto"
}

在这里插入图片描述

3. 发送Post请求

curl -X -POST URL 
或者 
curl -XPOST URL

测试

curl -XPOST  https://jsonplaceholder.typicode.com/posts

{
	"id": 101
}

在这里插入图片描述

3.1 Post请求带参数

curl -XPOST URL -d '{"key1":"value1","key2":"value2"}'

测试

curl -XPOST https://jsonplaceholder.typicode.com/posts -d '{"name":"张三", "age":"20"}'

{
  "{\"name\":\"张三\", \"age\":\"20\"}": "",
  "id": 101
}

4. Put请求和Delete请求

curl -XPUT URL 和 curl -XDELETE URL
带参数的
curl -XPUT URL -d '{}' 和 curl -XDELETE URL -d '{}'

测试put

curl -XPUT https://jsonplaceholder.typicode.com/posts/1 -d '{"name":"李四", "age":"10"}'

输出
{
  "{\"name\":\"李四\", \"age\":\"10\"}": "",
  "id": 1
}

5. 携带首部信息

curl -XPOST URL -H '' -H '' //可以携带多个首部信息

测试

curl -XPOST  https://jsonplaceholder.typicode.com/posts -H 'Content-type:application/json' 
			 -H 'A-cc-dept:ap-aption/json' -d '{"title":"张三"}'

{
  "title": "张三",
  "id": 101
}

6. 获取响应的所有的首部信息

curl -I URL  // 使用大写I获取

测试

curl -I https://jsonplaceholder.typicode.com/posts

HTTP/2 200
date: Sun, 14 Aug 2022 10:02:42 GMT
content-type: application/json; charset=utf-8
x-powered-by: Express
x-ratelimit-limit: 1000
x-ratelimit-remaining: 999
x-ratelimit-reset: 1652476599
vary: Origin, Accept-Encoding
access-control-allow-credentials: true
cache-control: max-age=43200
pragma: no-cache
expires: -1
x-content-type-options: nosniff
etag: W/"6b80-Ybsq/K6GwwqrYkAsFxqDXGC7DoM"
via: 1.1 vegur
cf-cache-status: HIT
age: 12762
expect-ct: max-age=604800, report-uri="https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct"
report-to: {"endpoints":[{"url":"https:\/\/a.nel.cloudflare.com\/report\/v3?s=t%2BwhJvMXQq7z8IdGOyEt7%2FgeW%2BRZy4MnLJ32vPvCHZA916xs20rYcy9zfbaAI9tGQ6372ztL5%2F1lXkg1bObDaorK9Zh7DoArRzxNfx%2FkJky3APOvo7Y1ryTscGC6dicHh2UO3JVdtbimr5Hyw8U%2F"}],"group":"cf-nel","max_age":604800}
nel: {"success_fraction":0,"report_to":"cf-nel","max_age":604800}
server: cloudflare
cf-ray: 73a8db3e5b0d7b59-LAX
alt-svc: h3=":443"; ma=86400, h3-29=":443"; ma=86400

7. 文件下载

curl -O URL 直接下载到当前文件夹里面 下载之前记得cd切换文件夹
curl -o https://profile.csdnimg.cn/F/0/6/1_m0_37989980

输出:
% Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100   107  100   107    0     0    512      0 --:--:-- --:--:-- --:--:--   532

8. 显示底层连接信息

curl -v URL //会显示握手信息等

9. 通过代理访问

curl --proxy 协议://用户名:密码@代理地址:端口 URL
curl --proxy "http://egg:123@127.0.0.1:1234" URL

10. 通过不同协议访问

curl -u 用户名:密码 -O ftp://server/aaa.avi 下载
curl -u 用户名:密码 -T 文件 ftp://server
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

CURL命令 : GET、POST请求、文件下载等常用命令 的相关文章

  • 检查隐藏是否等于 true 或 false jQuery

    我有这个 div attr hidden true i tried var a div attr hidden var b div attr hidden val var c div hidden var a div disabled 我只
  • 使用 PHP 获取 XML 文件的内容 [重复]

    这个问题在这里已经有答案了 可能的重复 file get contents 与 https https stackoverflow com questions 1975461 file get contents with https 使用
  • Unix cURL POST 使用文件中的内容到特定变量

    我已经搜索过这个答案 但没有找到任何有效或完全符合我的问题的答案 使用 Unix cURL 我需要将键 值对发布到服务器 密钥将是 MACs 换行符分隔的 MAC 地址文件的内容将是此 POST 的 VALUE 我试过了 curl d fi
  • curl 在命令行中工作正常,但在 php 中不行

    我使用curl 从 PHP 中检索 url 的内容 它适用于大多数 url 但对于某些 url 它只返回一个空字符串 从命令行 卷曲 此类 url 效果很好 这是我运行curl的方式 curl session curl init site
  • 防止刷新时提交双重表单

    我有一个简单的问题 我知道当用户使用 Post Redirect Get 模式重新加载页面时 我可以防止表单重新提交自身 但我的问题是 如果我将用户重定向回提交表单的同一页面 这种模式是否有效 我的意思是 我不想将用户重定向到另一个页面 请
  • 在 UWP(W10) 中使用 HttpClient 发出 POST 请求

    我正在使用通用 Windows 平台制作应用程序 我想问如何使用 httpclient 将 id 1 这样的数据发布到服务器 我知道网上有一些教程 但其中很多都是针对 Windows 8 1 的 在 10 中不起作用 如果你想在UWP中处理
  • PHP:如何获取
    中的名称值

    有没有办法获取form标签中name属性的值 我正在使用 PHP 但在 中没有看到它 POST 有没有办法获取form标签中name属性的值 我正在使用 PHP 但在 POST 中没有看到它 不 表单的名称属性永远不会设置为作为 POST
  • 在 Objective-C iPad 开发中发布

    我正在尝试发出 POST 请求 但我似乎无法弄清楚出了什么问题 我从服务器收到响应 但我的电子邮件 密码对似乎没有正确发送 读取 由服务器 它告诉我不存在这样的帐户 这是我的代码 它包含在一个函数中 当用户按下我创建的 登录 按钮时调用该函
  • jquery ajax 发送到 MVC 控制器时不断收到 400(错误请求)

    我的 ajax 调用看起来像这样 ajax actually approve or reject the promotion url url type POST data data PromotionId data UserId data
  • 使用 PHP 将表单数据发送/发布到 URL [关闭]

    Closed 这个问题需要细节或清晰度 help closed questions 目前不接受答案 我有一个通过 POST 提交的表单 提交表单后我捕获变量 如何连接表单数据 然后将其 POST 到 url 然后重新定向到感谢页面 这不是确
  • 如何使用 http 将 Android 中的文件从移动设备发送到服务器?

    在android中 如何使用http将文件 数据 从移动设备发送到服务器 很简单 您可以使用 Post 请求并将文件作为二进制 字节数组 提交 String url http yourserver File file new File En
  • 如何从 jquery .load 获取 php 响应

    例如我给出另一个代码 这是我的 some3 php 代码 第一个文件
  • 使标签充当输入按钮

    我怎样才能做一个 a href http test com tag test Test a 就像表单按钮一样 通过充当表单按钮 我的意思是 当单击链接执行操作时method get 或 post 以便能够通过 get 或 post 捕获它
  • 我应该使用多个 HttpClient 来进行批量异步 GET 请求吗?

    我有一个场景 我需要在尽可能短的时间内发出大量 GET 请求 想想大约 1000 个 我知道通常最好保留一个客户端并尽可能重用它 Create Single HTTP Client HttpClient client new HttpCli
  • MS Access 执行 POST Web 请求

    在我的 MS Access 应用程序中 我需要定期向我的网络服务器发送一批信息 我不需要任何花哨的东西 比如 SOAP XML RPC 或任何东西 只需一个简单的 POST 页面请求就足够了 我用谷歌搜索了一下 但找不到任何真正有用的东西
  • 重复使用相同的卷曲手柄。性能大幅提升?

    在 PHP 脚本中 我对不同的 URL 执行了许多不同的curl GET 请求 一百个 将重复使用来自curl init提高性能 还是与请求的响应时间相比可以忽略不计 我这么问是因为在当前的架构中保持相同的句柄并不容易 交叉发布自我应该关闭
  • 在Windows 7上安装curl后缺少libcurl-4.dll

    按照这个人的安装curl后指示 https stackoverflow com a 28757477 1186038 除了第 2 步 已安装Win64 OpenSSL v1 0 1u 轻型相反 因为下载页面中缺少版本 k http slpr
  • jruby 的路边(卷曲)?

    我正在尝试将curl 与jruby 结合使用来获得网页 文件的一些响应时间 通常在 ruby 中这不会是一个问题 我可以安装 gem gem install junction 一切都很好 遏制似乎与 jruby 不兼容 那么有没有一种替代方
  • Ruby on Rails 服务器在 HTTPS POST 请求期间崩溃

    我正在尝试与你沟通城市飞艇API http urbanairship com docs push html broadcast使用 ROR Web 应用程序 在我的控制器中 我有以下代码 require net http require n
  • Spark Java框架中如何使用get获取请求参数?

    我是 Sparkjava 的新手 我想使用 Spark java 读取我的请求参数 但我无法找到正确的语法 请帮帮我 下面是我的路由方法和客户端对其的调用 我的客户请求网址 smartapp getDataViewModelConfig c

随机推荐

  • ​LeetCode刷题实战540:有序数组中的单一元素

    算法的重要性 我就不多说了吧 想去大厂 就必须要经过基础知识和业务逻辑面试 算法面试 所以 为了提高大家的算法能力 这个公众号后续每天带大家做一道算法题 题目就从LeetCode上面选 今天和大家聊的问题叫做 有序数组中的单一元素 我们先来
  • 模拟实现库函数strlen(详解)

    模拟实现库函数strlen 的意思是 不用strlen函数 但要求出字符串长度 1 先打印主函数 记字符串长度为len 并引入自己定义的strilen函数 含arr int main char str abcdef int len strl
  • 【python图像处理】python的图像处理模块Image【原创】

    版本信息 2 7 11 环境 windows 7 64位系统 编辑器 PyCharm 运行工具 PyCharm 文件地址 D phpStudy WWW python Image 一 引入图像模块 1 PIL简介 PIL Python Ima
  • 经典场效应管如何快速关断技巧-KIA MOS管

    mos管的快速关断原理 R4是Q1的导通电阻没有Q1就没有安装的必要了 当低电位来时Q1为泻放扩流管 功率MOS管怎样关断 能否用PWM实现 怎样实现 功率mosfet的三个端口 G极 D极 S极 G极控制mosfet的开通 关断 给GS极
  • Linux查看文件命令

    文章目录 Linux查看文件命令 1 使用vim命令 查看并编辑文件 2 使用cat命令 一次性显示文件的所有内容 3 使用head 命令 显示文件开头 默认10行 4 使用tail 命令 显示文件结尾 默认10行 vi vim工具共分为三
  • MongoDB shell操作

    MongoDB shell操作 实验目的 1 了解MongoDB的shell操作语法 2 掌握MongoDB中对数据增删改查的命令 实验原理 MongoDB shell是一个可执行文件 是MongoDB自带的一个交互式JavaScript
  • 仅需一个参数,开启微信小程序长按图片转发朋友,发送给朋友功能。小程序转发图片给朋友功能。

    原来 只需要在 image 属性加入 show menu by longpress 1 就可以实现了 太方便了吧 你是不是在这里找到答案了 给个赞呗
  • 信息收集——根据图中信息找到图中的餐厅

    这是一道网络迷踪类型的题目 先观察图片 图中比较明显的特征便是薯条和汉堡下面的小票和海报 或者类似于海报的东西 小票明显是英文的 所以初步判定该餐厅不是大陆的 去百度上搜索国外麦当劳餐厅小票 由以上三张图片可知 英文小票上对于麦当劳餐厅的描
  • 27道多线程核心面试题(附答案),你真的准备好面试了吗?

    今天给大家分享的是比较全面的多线程面试题 大家在面试的过程中不免会被问到很多专业性的问题 有的时候回答的并不是那么全面和精细 这仅仅代表个人观点 1 如何预防死锁 1 首先需要将死锁发生的是个必要条件讲出来 互斥条件 同一时间只能有一个线程
  • 常成员函数和常对象

    const回顾 const int a 10 a不能被改变 int const p 指针的指向可变 指向里的值不可变 int const p 指针的指向不可变 指向里的值可变 int const const p 都不可变 const int
  • PageHelper分页插件使用

    http blog csdn net nz360 article details 52326232 主要记录自己使用PageHelper分页的过程 需要的jar包 java view plain copy
  • 关于Context(上下文)的理解

    一直听到上下文一说 一直没弄清楚到底是啥意思 今天总结一下 不知道对不对 感觉对Context这个词翻译的不太好 不应该叫上下文 应该直接就叫 环境 不过都这么叫 就叫上下文好了 所谓的上下文就是指语境 每一段程序都有很多的外部变量 只有想
  • Python四种常用的高阶函数,你会用了吗

    1 什么是高阶函数 把函数作为参数传入 这样的函数称为高阶函数 例如 def func1 x y f return f x f y num func1 10 2 abs print num 注意 把函数作为参数传入的时候 不要再传入函数后面
  • Latex中cases环境引入报错

    编写 begin equation C i begin cases 0 i 0 max 0 x i bar x C i 1 i neq 0 end cases end equation 时报错 需要导入宏包 usepackage amsma
  • 利用云主机搭建游戏加速器(仅限国内加速)

    利用云主机搭建游戏加速器 仅限用于中国大陆内游戏加速服务 注意 仅限用于中国大陆内游戏加速服务 禁止开飞机 最近在玩西山居公司的剑网三游戏 因为自己用的是联通宽带 但是玩的是电信区的服务器 我使用的是腾讯云的云主机 大家可以根据需要自己来做
  • BES2300x笔记(20) -- IIC驱动

    哈喽大家好 这是该系列博文的第二十篇 篇 lt lt 系列博文索引 快速通道 gt gt 一 前言 说到IIC驱动 绝对是一个老生常谈的话题 但凡入坑了嵌入式开发的道友 肯定都能说的头头是道 编写个驱动 调试个外设 那更是信手拈来 不在话下
  • java 静态分析工具_了解您的Java静态分析工具

    java 静态分析工具 有许多Java静态分析工具在起作用 每个人都专注于特定领域并具有自己独特的优势 这是一个有用的摘要 Pmd 基于静态规则集的Java源代码分析器 它识别潜在的问题 例如 可能的错误 尝试 捕获 最终 切换块为空 无效
  • 解析 ETH 区块数据交易input

    这里使用了一个开源项目 https github com rvullriede evm abi decoder 在pom中添加依赖即可
  • Pytorch中nn.LSTM与nn.LSTMCell

    class torch nn LSTM args kwargs 对输入序列的每个元素 LSTM的每层都会执行以下计算 h t h t ht 是时刻 t t t的隐状态 c t c t ct 是时刻 t t t的细胞状态 x t x t xt
  • CURL命令 : GET、POST请求、文件下载等常用命令

    文章目录 1 curl介绍 2 直接发送请求 Get 3 发送Post请求 3 1 Post请求带参数 4 Put请求和Delete请求 5 携带首部信息 6 获取响应的所有的首部信息 7 文件下载 8 显示底层连接信息 9 通过代理访问