in reply to Re^3: HTTP::Tiny losing headers for Stripe
in thread HTTP::Tiny losing headers for Stripe

...but it is in the code

Well spotted tangent
I'm sure there was a reason for this behaviour but it does seem very odd!

All my calls to Stripe are in a dedicated module and this has now been modified to get around this issue. The headers are cloned to create a deep copy immediately before the API calls and therefore the original headers don't get clobbered. I've done this with all calls in case any future script makes multiple calls for any reason.

use HTTP::Tiny; use Clone qw(clone); my $http = HTTP::Tiny->new; my $headers = { 'headers' => { 'Authorization' => 'Bearer ' . $Site::Variables::stripe_secret +, }, 'agent' => 'Wayfinder/v3.0', }; # for each API call my $head = clone($headers); my $response = $http->post_form($stripe_api_url, $payload, $head);