谷歌支付内购回调需要使用Google Play Developer API来验证订单的合法性。以下是验证订单的步骤: 1. 获取谷歌开发者控制台的服务帐户JSON文件,该文件包含了您的API密钥。 2. 使用PHP编写代码,通过cURL发送POST求,将订单ID作为参数发送至Google Play Developer API。 3. Google Play Developer API将返回订单的详细信息,包括订单状态、购买间、购买者信息等。 4. 您可以通过验证订单状态、购买间和购买者信息来确保订单的合法性。 以下是一个简单的PHP代码示例,用于验证Google Play支付内购回调: ```php <?php //获取POST求中的订单ID $orderID = $_POST['orderId']; //设置API密钥 $apiKey = 'YOUR_API_KEY'; //设置求URL $url = 'https://www.googleapis.com/androidpublisher/v3/applications/your_package_name/purchases/subscriptions/'. $orderID . '/tokens/token_string'; //发送POST求 $ch = curl_init($url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_HTTPHEADER, array('Authorization: Bearer ' . $apiKey)); $response = curl_exec($ch); curl_close($ch); //解析API返回的JSON数据 $json = json_decode($response); $purchaseState = $json->purchaseState; $purchaseTimeMillis = $json->purchaseTimeMillis; $purchaserEmail = $json->purchaserEmail; //验证订单状态和购买者信息 if ($purchaseState == 0 && $purchaserEmail == 'example@mail.com') { //订单合法 } else { //订单非法 } ?> ``` 上述代码中,`YOUR_API_KEY`需要替换为您的API密钥,`your_package_name`需要替换为您的应用程序包名称,`token_string`需要替换为您的订阅令牌。 注意,您需要先在Google Play Console中启用Google Play Developer API,并生成API密钥。此外,您需要将API密钥存储在安全的位置,并确保只有授权的用户可以访问它。