Pregunta

He implementado el código de muestra encontrado en https://code.google.com/P / IAP-PHP / en mi sitio de prueba http://whatisthesite.com .Como podría ver, hay un mensaje de error vago una vez que se hace clic en el botón "Compra":

There is an error in the setup for your purchase. Please contact the merchant with this error message: Expected 3 components in jwt: $jwtToken

La consola da:

Uncaught SecurityError: Failed to read the 'contentDocument' property from 'HTMLIFrameElement': Blocked a frame with origin "http://whatisthesite.com" from accessing a frame with origin "https://sandbox.google.com".  The frame requesting access has a protocol of "http", the frame being accessed has a protocol of "https". Protocols must match.
 markdown-here.js:33
findFocusedElem markdown-here.js:33
intervalCheck

El sitio de demostración http://iap-php.appspot.com/ no es https:Tampoco hay alguna parte del código para definir el protocolo.Cualquier consejo sería apreciado, gracias!

Actualización:

Tiene algo que ver con el uso de la muestra de la sintaxis "AQUÍ DOC" para usar variables de PHP en línea en las funciones de JS.Cambió esta sintaxis:

echo <<< INDEX <button id='runDemoButton' value='buy' class='buy-button' onclick='DemoButton("$jwtToken");'><b>Purchase</b></button> INDEX;

a esto:

<button id='runDemoButton' value='buy' class='buy-button' onclick='DemoButton("<?php echo $jwtToken;?>");'><b>Purchase</b></button>

pero ahora da un error aún más vago.

¿Fue útil?

Solución

Errores de diálogo como "Hay un error en la configuración de su compra". Tener un código de error correspondiente devuelto al controlador de fallas del lado del cliente:

https://developers.google.com/wallet/digital/docs/jsreference # coakandler

En su caso, el código de error es Merchant_Error, lo que indica un JWT gravemente formateado.Esto puede deberse a utilizar la clave de vendedor incorrecta o en secreto para firmar el JWT.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top