這篇文章將為大家詳細講解有關PHP中CURL上傳二進制流圖片的方法,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。
項目中模塊數據由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上傳二進制流圖片的方法”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,使各位可以學到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。