关于PHP CURL上传二进制流图片
时间:2021-01-05 来源:互联网
PHP CURL上传二进制流图片呢?项目中模块数据由PHP爬虫进行更新,当检测到有新图片时需要上传到跨地区的CDN回源服务器(静态资源服务器),服务器负责人只提供一个上传API,下面PHP爱好者分享PHP CURL上传二进制流图片方法,希望对大家有所帮助。
关于PHP CURL上传二进制流图片解决方法
1.将图片保存到本地再使用PHP CURL + new \CURLFile($path)上传(缺点: IO操作)
2.模拟拼接请求数据报文,将图片以二进制文件直接发送给上传API √
composer require ar414/curl-upload-binary-image
require_once '../vendor/autoload.php';
use Ar414\UploadBinaryImage;
$url = 'http://0.4.1.4:414/upload?path=/test/';
$fields = [];
$fieldName = 'file';
$fileName = 'ar414.png';
$fileBody = file_get_contents('https://github.com/ar414-com/ar414-com/raw/master/assets/ar414.png');
$ret = UploadBinaryImage::upload($url,$fields,$fieldName,$fileName,$fileBody);
var_dump($ret);
解决思路
1.重温HTTP知识
2.通过postman,Google Chrome 上传文件 查看发送的请求数据
3.拼接请求体
set Header multipart/form-data; boundary={md5(microtime())}
set Body Block Content-Type: application/octet-stream
-
RocketMQ详细介绍(概念、启动命令、工作原理、消息堆积处理等) 2025-07-10
-
币安交易所常见问题解答 2025-07-10
-
RocketMQ和kafka对比分析 RocketMQ和RabbitMQ区别 2025-07-10
-
中国“十四五”规划圆满收官,科技创新经济发展成就全球瞩目 2025-07-10
-
Python中assert函数详解(基本语法、作用、用法) 2025-07-10
-
币安交易所视频教学资源 2025-07-10