第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

使用帶有 php 的 chevereto api 上傳圖像

使用帶有 php 的 chevereto api 上傳圖像

PHP
慕少森 2023-04-21 15:53:46
我正在嘗試將圖像從我的服務器上傳到安裝了 chevereto 的 img 服務器,但我無法讓它工作到目前為止,這是我的代碼: $directory = "/var/www"; $images = glob($directory . "/*.jpg");foreach($images as $image){  echo $image;  $data =  base64_encode(file_get_contents($image));  $run= shell_exec("curl --location --request POST \"http://ip/api/1/upload/?key=123456789&source=$data&format=json\"");print_r($run);}收到錯誤:414 Request-URI Too Large這是 api 文檔: https: //chevereto.com/docs/api-v1
查看完整描述

1 回答

?
動漫人物

TA貢獻1815條經驗 獲得超10個贊

您正在使用POST請求方法,但您發(fā)送的是source parameter in URL. 您的URL$data中的 是 base64 編碼的,這會產生一個非常大的字符串。這就是您收到錯誤的原因414 Request-URI Too Large。

解決方案:

您應該使用相同的 POST 方法將參數更改為 JSON 正文。

從您提供的文檔中chevereto可以清楚地看出。

API v1 調用可以使用 POST 或 GET 請求方法完成,但由于 GET 請求受 URL 允許的最大長度限制,您應該更喜歡 POST 請求方法。

因此,使用 POST 方法和包含成對參數的 JSON Body key:value。這將解決問題。

示例 PHP 代碼:

$requestData = [

    'key' => 123456789,

    'source' => 'base64EncodedStringHere',

    'format' => 'json'

];


$jsonData = json_encode($jsonData);


$curl = curl_init();


curl_setopt_array($curl, array(

  CURLOPT_URL => "http://ip/api/1/upload",

  CURLOPT_RETURNTRANSFER => true,

  CURLOPT_ENCODING => "",

  CURLOPT_MAXREDIRS => 10,

  CURLOPT_TIMEOUT => 0,

  CURLOPT_FOLLOWLOCATION => true,

  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,

  CURLOPT_CUSTOMREQUEST => "POST",

  CURLOPT_POSTFIELDS => $jsonData,

  CURLOPT_HTTPHEADER => array(

    "Content-Type: application/json"

  ),

));


$response = curl_exec($curl);


curl_close($curl);

echo $response;


查看完整回答
反對 回復 2023-04-21
  • 1 回答
  • 0 關注
  • 308 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號