J'ai téléchargé la DÉMO officielle de WeChat Pay et payé en mode 2. Il n'y a aucun problème avec le paiement maintenant et le paiement peut réussir. Cependant, les données XML envoyées par WeChat ne peuvent pas être reçues dans le rappel notify.php ;
$input = $GLOBALS['HTTP_RAW_POST_DATA'];
$xml = simplexml_load_string($input, 'SimpleXMLElement', LIBXML_NOCDATA);
var_dump($xml);
Le répertoire d'autorisation de paiement du compte officiel WeChat est le suivant :
Si oui
PHP7
Utilisez la méthode suivante pour obtenir les paramètres de notification asynchrone WeChat$GLOBALS['HTTP_RAW_POST_DATA']; Il semble que toute la fonction ait été supprimée dans php7, utilisez file_get_contents('php://input')
1. Vérifiez d'abord la connexion dans nginx ou apache pour vérifier si le client WeChat a demandé une connexion de rappel une fois le paiement réussi.
2. Si un lien est demandé, vérifiez les problèmes de logique de fonction dans le rappel
Les versions supérieures de PHP ne sont pas disponibles
HTTP_RAW_POST_DATA
Veuillez les utiliser systématiquement