当前位置: 首页 > 科技观察

练习

时间:2023-03-20 22:44:22 科技观察

的21个curl命令最近,我对人们如何学习新事物很感兴趣。我正在读KathySierra的好书《Badass: Making Users Awesome》,其中探讨了“刻意练习”的理念。这个想法是你找到一个小技能,你可以在三个45分钟的课程中学习,然后专注于学习那个小技能。因此,作为一项练习,我试图想出一种可以在三个45分钟的课程中学习的计算机技能。我认为使用curl构建HTTP请求可能是一种技能,所以这里有一些curl练习可以试验!什么是curl?curl是一个用于构造HTTP请求的命令行工具。我喜欢使用curl,因为它是一种测试服务器或API是否按预期运行的简单方法,但在您刚开始使用时可能会有点混乱!这是一幅漫画(在我的BiteSizeNetworking杂志的第6页)解释了curl的常见命令行参数。熟能生巧与任何命令行工具一样,我认为熟练使用它会有所帮助,而且能够只键入必要的命令也很好。例如,最近我在测试GumroadAPI,我只需要输入:curlhttps://api.gumroad.com/v2/sales\-d"access_token="\-XGET-d"before=2016-09-03"从命令行获得所需的结果。21curl练习这些练习是为了理解如何用curl构造不同类型的HTTP请求,它们有意重复一些,基本上涵盖了我需要curl做的任何事情。为了简单起见,我们将向https://httpbin.org发出一系列HTTP请求,httpbin接受HTTP请求,然后在响应中回显你发出的HTTP请求。请求https://httpbin.org请求https://httpbin.org/anything,它会解析你的请求并在响应中回显。默认情况下,curl会向https://httpbin.org/anything发起GET请求,但此时需要添加一些查询参数(设置value=panda)来请求Google的robots.txt文件(www.google.com/robots.txt)向https://httpbin.org/anything发起GET请求,并设置请求头为User-Agent:elephant向https://httpbin.org/anything发起DELETE请求到https://httpbin.org/anything并获取响应头信息向https://httpbin.com/anything发起POST请求,请求体为JSON{"value":"panda"}同上次POST请求,但这次设置将请求标头中的Content-Type字段发送到application/json(因为POST请求需要与请求正文匹配的Content-Type请求标头字段)。检查响应体中的json字段,与上次获取的响应体进行对比,向https://httpbin.org/anything发起GET请求,并在请求头中设置Accept-Encoding:gzip(会发生什么?为什么?)将一些JSON放入文件中,然后向https://httpbin.org/anything发送请求。将请求标头设置为Accept:image/png并向https://httpbin.org/image发送请求。请求,将输出保存为PNG文件并使用图像查看器打开它。尝试使用不同的Accept:字段来请求此URL向https://httpbin.org/anything发出PUT请求请求https://httpbin.org/image/jpeg并将其保存为文件,然后使用您的图像打开它editor向https://www.twitter.com提交请求,你将得到一个空响应。让curl显示响应头信息,尝试找出响应内容为空的原因。向https://httpbin.org/anything发起任意请求,并设置一些无意义的请求头(例如:panda:elephant)请求https://httpbin.org/status/404和https://httpbin.org/status/200,然后再次请求它们,让curl显示响应头请求https://httpbin.org/anything并设置用户名和密码(使用-u用户名:密码)设置Accept-Language的请求头:es-ES为下载Twitter的西班牙语主页(https://twitter.com)使用curl向StripeAPI发出请求(请参阅https://stripe.com/docs/development了解如何使用,他们会给你一个API密钥用于测试)。尝试向https://httpbin.org/anything发出相同的请求