Foros del Web » Programación para mayores de 30 ;) » Programación móvil »

Recibos iphone

Estas en el tema de Recibos iphone en el foro de Programación móvil en Foros del Web. Saludos, alguien sabe de algún repositorio de recibos de app store para hacer pruebas con el sandbox de la validacion de recibos. Yo estoy creando ...
  #1 (permalink)  
Antiguo 02/02/2012, 12:59
 
Fecha de Ingreso: enero-2012
Mensajes: 2
Antigüedad: 12 años, 2 meses
Puntos: 0
Recibos iphone

Saludos, alguien sabe de algún repositorio de recibos de app store para hacer pruebas con el sandbox de la validacion de recibos.

Yo estoy creando un proveedor de contenido para una app de iphone.

Mi servidor recibe el receipt de app store o de iphone (la verdad no estoy seguro) pero una vez que me mandan la cadena en algo que parece base64 la trato de validar pero no me da ningun resultado

Este código lo hace pero creo que el recibo que me da el equipo que hace la app movil no me lo esta dando bien.

Código PHP:
    error_reporting(-1);
    
    echo 
'recibo post';
    
    function 
getReceiptData($receipt$isSandbox true)
    {
        
// determine which endpoint to use for verifying the receipt
        
if ($isSandbox
        {
            
$endpoint 'https://sandbox.itunes.apple.com/verifyReceipt';
        }
        else {
            
$endpoint 'https://buy.itunes.apple.com/verifyReceipt';
        }
 
        
// build the post data
        
$postData json_encode(
            array(
'receipt-data' => $receipt)
        );
 
        
// create the cURL request
        
$ch curl_init($endpoint);
        
curl_setopt($chCURLOPT_RETURNTRANSFERtrue);
        
curl_setopt($chCURLOPT_POSTtrue);
        
curl_setopt($chCURLOPT_POSTFIELDS$postData);
 
        
// execute the cURL request and fetch response data
        
$response curl_exec($ch);
        
$errno    curl_errno($ch);
        
$errmsg   curl_error($ch);
        
curl_close($ch);
 
        
// ensure the request succeeded
        
if ($errno != 0) {
            throw new 
Exception($errmsg$errno);
        }
 
        
// parse the response data
        
$data json_decode($response);
 
        
// ensure response data was a valid JSON string
        
if (!is_object($data)) {
            throw new 
Exception('Invalid response data');
        }
 
        
// ensure the expected data is present
        
if (!isset($data->status) || $data->status != 0) {
            throw new 
Exception('Invalid receipt');
        }
 
        
// build the response array with the returned data
        
$json = array(
            
'quantity'       =>  $data->receipt->quantity,
            
'product_id'     =>  $data->receipt->product_id,
            
'transaction_id' =>  $data->receipt->transaction_id,
            
'purchase_date'  =>  $data->receipt->purchase_date,
            
'app_item_id'    =>  $data->receipt->app_item_id,
            
'bid'            =>  $data->receipt->bid,
            
'bvrs'           =>  $data->receipt->bvrs
        
);
        
        return 
$json;
    }
 
    
// fetch the receipt data and sandbox indicator from the post data
    /* $receipt   = $_POST['receipt'];
    $isSandbox = (bool) $_POST['sandbox'];
     * 
     */
    
$receipt 'ewoJInNpZ25hdHVyZSIgPSAiQWx1SFVsb0dxejZjOVNvSlFVejF0OThhemI2WjJCb2N3WVBhK2ZVYllmdUI5ZE5RQkViV2dTNXVIUUluakdSQ2RScVkxUHhQY2cvMk1kSVlONEN2anc0RkNuc0JqT0d2NGFqNjVBczQ2SERseGd4WjdlTElGUXcrcG9QVlpTZHlEWWF6NHBPaGxxNVBmVXNqdmlZNENYd3VaQzkrSTBHdk55bVZWNkhnR2FCRUFBQURWekNDQTFNd2dnSTdvQU1DQVFJQ0NHVVVrVTNaV0FTMU1BMEdDU3FHU0liM0RRRUJCUVVBTUg4eEN6QUpCZ05WQkFZVEFsVlRNUk13RVFZRFZRUUtEQXBCY0hCc1pTQkpibU11TVNZd0pBWURWUVFMREIxQmNIQnNaU0JEWlhKMGFXWnBZMkYwYVc5dUlFRjFkR2h2Y21sMGVURXpNREVHQTFVRUF3d3FRWEJ3YkdVZ2FWUjFibVZ6SUZOMGIzSmxJRU5sY25ScFptbGpZWFJwYjI0Z1FYVjBhRzl5YVhSNU1CNFhEVEE1TURZeE5USXlNRFUxTmxvWERURTBNRFl4TkRJeU1EVTFObG93WkRFak1DRUdBMVVFQXd3YVVIVnlZMmhoYzJWU1pXTmxhWEIwUTJWeWRHbG1hV05oZEdVeEd6QVpCZ05WQkFzTUVrRndjR3hsSUdsVWRXNWxjeUJUZEc5eVpURVRNQkVHQTFVRUNnd0tRWEJ3YkdVZ1NXNWpMakVMTUFrR0ExVUVCaE1DVlZNd2daOHdEUVlKS29aSWh2Y05BUUVCQlFBRGdZMEFNSUdKQW9HQkFNclJqRjJjdDRJclNkaVRDaGFJMGc4cHd2L2NtSHM4cC9Sd1YvcnQvOTFYS1ZoTmw0WElCaW1LalFRTmZnSHNEczZ5anUrK0RyS0pFN3VLc3BoTWRkS1lmRkU1ckdYc0FkQkVqQndSSXhleFRldngzSExFRkdBdDFtb0t4NTA5ZGh4dGlJZERnSnYyWWFWczQ5QjB1SnZOZHk2U01xTk5MSHNETHpEUzlvWkhBZ01CQUFHamNqQndNQXdHQTFVZEV3RUIvd1FDTUFBd0h3WURWUjBqQkJnd0ZvQVVOaDNvNHAyQzBnRVl0VEpyRHRkREM1RllRem93RGdZRFZSMFBBUUgvQkFRREFnZUFNQjBHQTFVZERnUVdCQlNwZzRQeUdVakZQaEpYQ0JUTXphTittVjhrOVRBUUJnb3Foa2lHOTJOa0JnVUJCQUlGQURBTkJna3Foa2lHOXcwQkFRVUZBQU9DQVFFQUVhU2JQanRtTjRDL0lCM1FFcEszMlJ4YWNDRFhkVlhBZVZSZVM1RmFaeGMrdDg4cFFQOTNCaUF4dmRXLzNlVFNNR1k1RmJlQVlMM2V0cVA1Z204d3JGb2pYMGlreVZSU3RRKy9BUTBLRWp0cUIwN2tMczlRVWU4Y3pSOFVHZmRNMUV1bVYvVWd2RGQ0TndOWXhMUU1nNFdUUWZna1FRVnk4R1had1ZIZ2JFL1VDNlk3MDUzcEdYQms1MU5QTTN3b3hoZDNnU1JMdlhqK2xvSHNTdGNURXFlOXBCRHBtRzUrc2s0dHcrR0szR01lRU41LytlMVFUOW5wL0tsMW5qK2FCdzdDMHhzeTBiRm5hQWQxY1NTNnhkb3J5L0NVdk02Z3RLc21uT09kcVRlc2JwMGJzOHNuNldxczBDOWRnY3hSSHVPTVoydG04bnBMVW03YXJnT1N6UT09IjsKCSJwdXJjaGFzZS1pbmZvIiA9ICJld29KSW1sMFpXMHRhV1FpSUQwZ0lqUXlORGMwTWpVeE1DSTdDZ2tpYjNKcFoybHVZV3d0ZEhKaGJuTmhZM1JwYjI0dGFXUWlJRDBnSWpFd01EQXdNREF3TURFMk1qUTRNVEFpT3dvSkluQjFjbU5vWVhObExXUmhkR1VpSUQwZ0lqSXdNVEV0TURNdE1EZ2dNREk2TkRRNk16Y2dSWFJqTDBkTlZDSTdDZ2tpY0hKdlpIVmpkQzFwWkNJZ1BTQWlZMjl0TG1OdmJYQmhibmt1UVhCd1RtRnRaUzR4TURBd01EQWlPd29KSW5SeVlXNXpZV04wYVc5dUxXbGtJaUE5SUNJeE1EQXdNREF3TURBeE5qSTBPREV3SWpzS0NTSnhkV0Z1ZEdsMGVTSWdQU0FpTVNJN0Nna2liM0pwWjJsdVlXd3RjSFZ5WTJoaGMyVXRaR0YwWlNJZ1BTQWlNakF4TVMwd015MHdPQ0F3TWpvME5Eb3pOeUJGZEdNdlIwMVVJanNLQ1NKaWFXUWlJRDBnSW1OdmJTNWpiMjF3WVc1NUxrRndjRTVoYldVaU93b0pJbUoyY25NaUlEMGdJakV1TUM0eElqc0tmUT09IjsKCSJwb2QiID0gIjEwMCI7Cgkic2lnbmluZy1zdGF0dXMiID0gIjAiOwp9'// $_POST['rcb'];
     
$isSandbox true;
    
        
// $info = getReceiptData($receipt, $isSandbox);
        
        // print_r($info);
    
    // verify the receipt
    
    
$info getReceiptData($receipt$isSandbox);
    
print_r($info);
        
        
/*

    try {
        $info = getReceiptData($receipt, $isSandbox);
        print_r($info);
 
        // receipt is valid, now do something with $info
    }
    catch (Exception $ex) {
        // unable to verify receipt, or receipt is not valid
        echo 'NO  SALE';
    }
         * 
         */ 

Etiquetas: iphone
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 04:19.