Récemment, j'ai travaillé avec IOS pour effectuer des paiements APP, et le processus de paiement a été très fluide. Cet article partage principalement avec vous la solution à l'échec de la vérification du rappel asynchrone du paiement Alipay APP. .
sera transmis en une seule fois, comme le montre la figure :
Une fois qu'IOS a demandé la chaîne, il appelle directement le SDK pour lancer la demande de paiement.
Mais il y a eu un problème lors du traitement de la vérification de la signature de rappel asynchrone, -_-||, selon la méthode officielle, la vérification de la signature échouait toujours, comme le montre l'image :
$flag revenait toujours faux. Plus tard, j'ai trouvé le centre d'assistance technique d'Alipay (le service est vraiment bon). Avec le même rappel de paiement, le service client a pu vérifier la signature avec succès. . . , après avoir comparé les données de rappel du service client avec mes données de rappel local, comme indiqué dans la figure :
Il a été constaté que PHP ajoute automatiquement le caractère d'échappement avant les caractères spéciaux dans fund_bill_list (magic_quotes_gpc dans php.ini est activé lors de la demande, et ' " sera automatiquement échappé)... Après avoir supprimé le caractère d'échappement, La vérification de la signature a réussi
Récemment, j'ai travaillé avec IOS pour le paiement APP, et le processus de paiement s'est très bien déroulé, je l'ai réussi en une seule fois selon le document officiel
, comme indiqué dans. l'image :
Une fois qu'IOS a demandé la chaîne, il appelle directement le SDK pour lancer la demande de paiement
Cependant, il y a un problème lors du traitement de la vérification de la signature de rappel asynchrone -. _-||, selon la méthode officielle, la vérification de la signature échoue toujours, comme le montre la figure :
.
$flag revenait toujours faux. Plus tard, j'ai trouvé le centre d'assistance technique d'Alipay (le service est vraiment bon). Avec le même rappel de paiement, le service client a pu vérifier la signature avec succès. . . , après avoir comparé les données de rappel du service client avec mes données de rappel local, comme indiqué dans la figure :
Il a été constaté que PHP ajoute automatiquement le caractère d'échappement avant les caractères spéciaux dans fund_bill_list (magic_quotes_gpc dans php.ini est activé lors de la demande, et ' " sera automatiquement échappé)... Après avoir supprimé le caractère d'échappement,
Recommandations associées :
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!