'Convert Curl in Laravel Http facade

i want refactor curl method which is work with laravel Http facade and now i'm encounter some error

public function get($data)
    {
        $post_data = http_build_query($data, '', '&');
        $sign = hash_hmac('sha512', $post_data, env('INDODAX_SECRET_KEY'));

        $response = Http::withHeaders([
             'Key' => env('INDODAX_API_KEY'),
             'Sign' => $sign,
        ])->withOptions([
            'form_params' => $data,
        ])
        ->withBody('post_data', $post_data)
        ->post(config('indodax.private.endpoint'), [
            'CURLOPT_POSTFIELDS' => $post_data,
        ]);

        return $response->collect();
    }

    public static function curl($data)
    {
        $post_data = http_build_query($data, '', '&');
        $sign = hash_hmac('sha512', $post_data, env('INDODAX_SECRET_KEY'));
        $headers = ['Key:'.env('INDODAX_API_KEY'),'Sign:'.$sign];

        $curl = curl_init();

        curl_setopt_array($curl, [
            CURLOPT_HTTPHEADER => $headers,
            CURLOPT_URL => config('indodax.private.endpoint'),
            CURLOPT_POST => true,
            CURLOPT_POSTFIELDS => $data,
            CURLOPT_RETURNTRANSFER => true,
        ]);

        $response = curl_exec($curl);

        return json_decode($response, true);
    }

enter image description here

i think i'm missing CURLOPT_POSTFIELDS part, how to set CURLOPT_POSTFIELDS in Http facade

i'v tried with withOptions and still same reff PHP Curl proxy option in Laravel Http Facade



Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source