对于PHP CURL上传二进制流图片
发布时间:01/01 来源:未知 浏览:
关键词:
引荐:《PHP视频教程》
前言
项目中模块数据由PHP
爬虫停止更新,当检测到有新图片时需要上传到跨地区的CDN回源效劳器(静态资源效劳器),效劳器负责人只供给一个上传API
解决办法
1.将图片留存到当地再使用PHP CURL
+ new \CURLFile($path)
上传(缺陷: IO操纵)
2.模拟拼接恳求数据报文,将图片以二进制文件直接发送给上传API
√
composer require ar414/curl-upload-binary-image
<?php 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
以上就是关于PHP CURL上传二进制流图片的具体内容,更多请关注百分百源码网其它相关文章!