Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

400 Bad Request - INVALID_SIGNATURE #97

Open
FloriaanLry opened this issue Jan 17, 2020 · 4 comments
Open

400 Bad Request - INVALID_SIGNATURE #97

FloriaanLry opened this issue Jan 17, 2020 · 4 comments
Assignees
Labels

Comments

@FloriaanLry
Copy link

FloriaanLry commented Jan 17, 2020

Bonjour,
J'utilise depuis longtemps l'API afin de faire différentes tâches, et mes tâches échouent depuis quelques jours. J'ai essayé de mettre à jour l'API, toujours la même erreur.

Que voici :
Fatal error: Uncaught exception 'GuzzleHttp\Exception\ClientException' with message 'Client error: POST https://eu.api.soyoustart.com/1.0/ip/127.0.0.1%2F29/reverse resulted in a 400 Bad Request response: {"errorCode":"INVALID_SIGNATURE","message":"Invalid signature","httpCode":"400 Bad Request"} ' in /var/www/vhosts/azertyuiop.fr/httpdocs/.composer/vendor/guzzlehttp/guzzle/src/Exception/RequestException.php:113 Stack trace: #0 /var/www/vhosts/azertyuiop.fr/httpdocs/.composer/vendor/guzzlehttp/guzzle/src/Middleware.php(66): GuzzleHttp\Exception\RequestException::create(Object(GuzzleHttp\Psr7\Request), Object(GuzzleHttp\Psr7\Response)) #1 /var/www/vhosts/azertyuiop.fr/httpdocs/.composer/vendor/guzzlehttp/promises/src/Promise.php(203): GuzzleHttp\Middleware::GuzzleHttp{closure}(Object(GuzzleHttp\Psr7\Response)) #2 /var/www/vhosts/azertyuiop.fr/httpdocs/.composer/vendor/guzzlehttp/promises/src/Promise.php(156): GuzzleHttp\Promise\Promise::callHandler(1, Object(GuzzleHttp\Psr7\Response), Array) #3 /var/www/vhosts/azertyuiop.fr/httpdocs in /var/www/vhosts/azertyuiop.fr/httpdocs/.composer/vendor/guzzlehttp/guzzle/src/Exception/RequestException.php on line 113

En attente d'une correction,
Rapide, je l'espère...
Merci à vous.

@peter279k
Copy link
Contributor

@FloriaanLry, sorry. I cannot understand France....Could you write the problem with English?

Thanks.

@rbeuque74
Copy link
Member

Bonjour @FloriaanLry,
Merci pour la remontée d'erreur. Visiblement l'erreur remontée provient directement du moteur d'API, et non pas du wrapper php-ovh. Il se peut qu'un code source invalide puisse provoquer ce problème.

Possible de nous partager les lignes du scripts qui sont en erreurs (sans indiquer les applicationSecret et consumerKey), afin qu'on puisse aider au mieux.
Si il est possible de nous communiquer un nichandle ou bien une applicationKey rattaché à votre compte, ainsi qu'un timestamp du moment où s'est produit l'erreur afin qu'on puisse vérifier avec nos logs côté API. Il est possible de me communiquer le nichandle et l'applicationKey en repostant votre message sur la mailing-list publique de l'API OVH, et je vous recontacterais en direct. api-subscribe@ml.ovh.net

--
Hey,
Thanks for the bug report. Errors seems to come from the API engine, and not from the php-ovh wrapper itself. Probable cause is a problem inside the source code calling the API. To troubleshoot this issue, we will requires to see the source code of the script (without AS & CK).
If you can also provide applicationKey or nichandle so we can have a look to servier logs. You can forward this message to the API mailing-list so I can recontact you directly to avoid sending the nichandle publicly here.

@peter279k: Issue was: I'm using the API to automatise some tasks for a long time, and my tasks are failing for a few days. I tried to update the API, but still running the same error.
Then the stacktrace.

@rbeuque74 rbeuque74 self-assigned this Jan 20, 2020
@rbeuque74 rbeuque74 added the bug label Jan 20, 2020
@FloriaanLry
Copy link
Author

Bonjour @rbeuque74, merci pour votre retour !
Thanks also to @peter279k, however, terms being technical, I prefer to speak in French, just to be understandable.

Voici une partie de mon code :

require DIR . '/autoload.php';
use \Ovh\Api;
$ovh = new Api( $applicationKey, $applicationSecret, $endpoint, $consumer_key);

$query1 = mysql_query("SELECT *  FROM taches_reversedns WHERE etat = '0' LIMIT 1");
while($tache = mysql_fetch_array($query1)) {
	echo " ".$tache['ip']." <br />";
	
	$query2 = mysql_query("SELECT * FROM ip WHERE IPv4 = '".$tache['ip']."'");
	$ip = mysql_fetch_array($query2);
		$blockIP = urlencode($ip['blocip']);
		$ipReverse = $tache['ip'];
		$reverse = $tache['reverse'];
		
		$result = $ovh->post('/ip/'.$blockIP.'/reverse', array(
			'ipReverse' => $ipReverse, // Required:  (type: ip)
			'reverse' => $reverse, // Required:  (type: text)
		));
		print_r( $result );
}

Erreur :

Fatal error: Uncaught exception 'GuzzleHttp\Exception\ClientException' with message 'Client error: POST https://eu.api.soyoustart.com/1.0/ip/127.0.0.1%2F30/reverse resulted in a 400 Bad Request response: {"httpCode":"400 Bad Request","errorCode":"INVALID_SIGNATURE","message":"Invalid signature"} ' in /var/www/vhosts/mywebsite.com/vendor/guzzlehttp/guzzle/src/Exception/RequestException.php:113 Stack trace: #0 /var/www/vhosts/mywebsite.com/vendor/guzzlehttp/guzzle/src/Middleware.php(66): GuzzleHttp\Exception\RequestException::create(Object(GuzzleHttp\Psr7\Request), Object(GuzzleHttp\Psr7\Response)) #1 /var/www/vhosts/mywebsite.com/vendor/guzzlehttp/promises/src/Promise.php(203): GuzzleHttp\Middleware::GuzzleHttp{closure}(Object(GuzzleHttp\Psr7\Response)) #2 /var/www/vhosts/mywebsite.com/vendor/guzzlehttp/promises/src/Promise.php(156): GuzzleHttp\Promise\Promise::callHandler(1, Object(GuzzleHttp\Psr7\Response), Array) #3 /var/www/vhosts/mywebsite. in /var/www/vhosts/mywebsite.com/vendor/guzzlehttp/guzzle/src/Exception/RequestException.php on line 113

PS: oui, mon code est vraiment vieux et il est moche. Je l'utilise depuis longtemps. C'est pour cela que c'est encore sous mysql_query... Je comptais le mettre à jour, mais j'aime vérifier que ça soit fonctionnel... On est pas là pour juger ça... lol.

Timestamp : 1580604556 (bien sûr, j'ai modifié le domaine, et l'IPv4 sur le retour d'erreur)

Merci à vous, promis je répondrais plus vite la prochaine fois !

@Revarh
Copy link

Revarh commented Feb 2, 2024

D'après mes souvenirs 'GuzzleHttp\Exception\ClientException' bug avec les %20 etc. et il faut aller trouver la ligne de code à modifier.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

4 participants