Bug #79855 [Csd->Nab]: php_curl lost content-length header on 302 redirect

From: Date: Wed, 15 Jul 2020 08:56:12 +0000
Subject: Bug #79855 [Csd->Nab]: php_curl lost content-length header on 302 redirect
References: 1  Groups: php.bugs 
Request: Send a blank email to php-bugs+get-228059@lists.php.net to get a copy of this message
Edit report at https://bugs.php.net/bug.php?id=79855&edit=1 ID: 79855 Updated by: requinix@php.net Reported by: kaa at g-it dot su Summary: php_curl lost content-length header on 302 redirect -Status: Closed +Status: Not a bug Type: Bug Package: cURL related Operating System: Ubuntu 18.04.4 LTS PHP Version: 7.2.24 Block user comment: N Private report: N Previous Comments: ------------------------------------------------------------------------ [2020-07-15 08:53:35] kaa at g-it dot su Damian Wadley, thank you vary much. You are right. Changing to curl_setopt($ch, CURLOPT_POST, 1) solve my problem and request now working properly. And I'm using protocol in right way) ------------------------------------------------------------------------ [2020-07-14 17:31:58] requinix@php.net Unless I'm misreading this, cURL is trying to switch from POST to GET * Switch from POST to GET but since you apparently set a custom request method of POST curl_setopt($ch, CURLOPT_CUSTOMREQUEST, $curl_method); it's going to repeat that method on the second request. So don't use a custom method and cURL will use POST/GET appropriately. It's also suspicious that you're trying to send to /p2p/v2/payer but that redirects you to /auth. I don't think you're using the API correctly. Seems like you needed to authenticate *before* sending your request, then include whatever credentials (the sessionToken?) in it. ------------------------------------------------------------------------ [2020-07-14 08:09:17] kaa at g-it dot su Yes. I've installed PHP 7.4.8 (cli) (built: Jul 13 2020 16:45:47) ( NTS ) ------------------------------------------------------------------------ [2020-07-14 07:44:06] cmb@php.net Well, actually we do no longer actively support 7.2. Does any of the actively supported PHP versions[1] behave this way? [1] <https://www.php.net/supported-versions.php> ------------------------------------------------------------------------ [2020-07-14 07:35:56] kaa at g-it dot su I will illustrate, with your permission) Me --> Server : POST request with php_curl, content-length is ok Me <-- Server : 302 Redirect temporary Me --> Server : GET request with php_curl, content-length is missing Me <-- Server : 411 Length Required So I expect that php_curl will add "content-length" parameter on step 3. ------------------------------------------------------------------------ The remainder of the comments for this report are too long. To view the rest of the comments, please view the bug report online at https://bugs.php.net/bug.php?id=79855 -- Edit this bug report at https://bugs.php.net/bug.php?id=79855&edit=1

« previous php.bugs (#228059) next »