最近搜索


没有最近搜索

Amir S.'s Avatar

Amir S.

已加入2024年3月31日

·

最后活动2024年5月27日

关注

0

关注者

0

活动总数

3

投票

0

订阅

1

活动概览

的最新活动 Amir S.

Amir S. 进行了评论,

社区评论 Developer - Zendesk APIs

foreach ($files as $key => $file)

      {

        $attachmentFile = $this->uploadAndGetPath($file);

        $attachmentMime = 'application/binary';

        $tmp = explode('/', $attachmentFile);

          $file_name = end($tmp);

        $tmp = explode('.', $attachmentFile);

          $file_extension = end($tmp);

        if ($file_extension=='pdf') { $attachmentMime = 'application/binary'; } // application/pdf

        if ($file_extension=='zip') { $attachmentMime = 'application/zip'; }

        if ($file_extension=='jpg') { $attachmentMime = 'image/jpeg'; }

        if ($file_extension=='png') { $attachmentMime = 'image/png'; }


 

        $headers = array();

        $headers[] = 'Content-Type: '.$attachmentMime;

        $headers[] = 'Authorization: Basic '.base64_encode(config('zendesk.username').':'.config('zendesk.token'));


 

        $attachmentFileData = file_get_contents(Storage::url($attachmentFile));


 

        $ch = curl_init();

              curl_setopt($ch, CURLOPT_URL, 'https://'.config('zendesk.sub_domain').'.zendesk.com/api/v2/uploads.json?filename='.$file_name);

              curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);

              curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);

              curl_setopt($ch, CURLOPT_POST, 1);

              curl_setopt($ch, CURLOPT_POSTFIELDS, $attachmentFileData);

        $result = curl_exec($ch);

        $result = json_decode($result,true);

        curl_close($ch);


 

        $uploadTokens[] = $result['upload']['token'];

        //unlink(getcwd().'/'.$attachmentFile);

      }

查看评论 · 已于 2024年5月27日 发布 · Amir S.

0

关注者

0

投票

0

评论


Amir S. 进行了评论,

社区评论 Developer - Zendesk APIs

Issue still occurs to me with image files. 
Code below for PDF uploads works! (using Content-Type: application/binary);

PHP/laravel, curl and correct content-type used. 
Any thougths? 

    $headers = array();

    $headers[] = 'Content-Type: image/jpeg';

    $attachmentUrl = 'https://storage.googleapis.com/orderaprint/orders/149872/367636_gooten_tote_bag_1711868333.jpg';

    $attachmentFileData = file_get_contents($attachmentUrl);


 

    $ch = curl_init();

          curl_setopt($ch, CURLOPT_URL, 'https://'.config('zendesk.sub_domain').'.zendesk.com/api/v2/uploads?filename=test.jpg');

          curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);

          curl_setopt($ch, CURLOPT_POST, 1);

          curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);

          curl_setopt($ch, CURLOPT_USERPWD, config('zendesk.username').':'.config('zendesk.token'));

          $post = array('file' => $attachmentFileData);

          curl_setopt($ch, CURLOPT_POSTFIELDS, $post);

    $result = curl_exec($ch);

    print_r($result);

    curl_close($ch);

    die();

查看评论 · 已于 2024年3月31日 发布 · Amir S.

0

关注者

0

投票

0

评论