使用CURL上传文件

使用CURL上传文件,第1张

近日再使用一个第三方接口的时候,使用curl调用一个上传文件的接口。

再多次失败后,终于找到了真经!!!

言归正传~

PHP的cURL支持通过给CURL_POSTFIELDS传递关联数组(而不是字符串)来生成multipart/form-data的POST请求。

PHP的cURL支持通过在数组数据中,使用“@+文件全路径”的语法附加文件,供cURL读取上传。

这与命令行直接调用cURL程序的语法是一致的:

php5.5开始引入了新的CURLFile类用来指向文件。CURLFile类也可以详细定义MIME类型、文件名等可能出现在multipart/form-data数据中的附加信息。推荐使用CURLFile替代旧的@语法:

使用CURL上传文件

curl是一个非常流行的命令行工具,可用于从远程服务器下载文件。但是,如果您需要从远程服务器下载文件,您需要通过ssh连接到该服务器,并使用curl命令下载文件。SSH是一种保护网络连接的加密协议,可确保在下载文件时安全传输文件。在使用curl从远程服务器下载文件之前,您需要首先建立SSH连接,包括输入用户名和密码或使用SSH密钥,然后才能运行curl命令下载文件。这样可以确保您的文件传输是安全的,并且您可以放心地下载和使用这些文件。

-#, --progress-bar

显示进度条

-b, --cookie <name=data>

使用cookie。如果没有 = , 则表示cookie文件路径 (参考 -c )

-c, --cookie-jar <file name>

response的cookie保存路径

-d, --data <data>

POST请求数据

-f, --fail

忽略错误信息 (不显示返回的HTML错误信息)

-F, --form <name=content>

表单数据

-H, --header <header>

设置请求Header

-i, --include

输出请求Header信息

-I, --head

只显示Header信息

-k, --insecure

允许不安全链接

-L, --location

Follow redirects.

-o, --output <file>

输出信息保存到指定文件中。可与 --create-dirs 一起使用,自动创建文件路径

-O, --remote-name

输出信息写到文件中,文件名同服务器端的文件名 (只能写入到当前目录)

-s, --silent

静默模式。与 -S 一起用,强制输出errors信息

-v, --verbose

显示更多信息(用于调试).

-w, --write-out <format>

请求结果后追加内容。例如, -w "\n" 可以在输出结果后追加一个换行符。可以把 -w "\n" 添加到 ~/.curlrc 文件中,这样每次执行结果后都自动追加换行符(默认curl返回内容最后缺少换行符,显示不友好)

-X, --request

请求方法类型,POST、GET、PUT等

使用 POST 或 PUT 请求时, 可用 Content-Type 指定两种数据格式:

curl默认为表单格式。如果使用json格式,需要手动设置header。

对于 POST 和 PUT 请求, 以下是通用参数:

application/x-www-form-urlencoded 为默认值:

等效于:

也可以使用数据文件:

或使用数据文件:


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/tougao/11543554.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-16
下一篇2023-05-16

发表评论

登录后才能评论

评论列表(0条)

    保存