Saltar al contenido

El formulario de pago de Laravel stripe no se maneja solo se publica

Este dilema se puede resolver de diversas maneras, pero nosotros te compartimos la resolución más completa en nuestra opinión.

Solución:

He creado https://jsfiddle.net/s8foxw9r/2/ que confirma el stripeTokenHandler está funcionando (y el token se está generando correctamente).

Si abre la URL jsfiddle, luego abra las herramientas de desarrollo en su navegador y mire la salida de la consola, verá un volcado de la token objeto que se pasa a stripeTokenHandler().

cuando golpeas Submit Payment la página POSTs a https://postman-echo.com/post que descargará su solicitud. Notarás que la solicitud se parece a esto:


  "args": ,
  "data": "",
  "files": ,
  "form": 
    "stripeToken": "tok_1F07d72eZvKYlo2CqBprboVK"
  ,
  "headers": 
    "x-forwarded-proto": "https",
    "host": "postman-echo.com",
    "content-length": "40",
    "accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3",
    "accept-encoding": "gzip, deflate, br",
    "accept-language": "en-US,en;q=0.9",
    "cache-control": "no-cache",
    "content-type": "application/x-www-form-urlencoded",
    "cookie": "sails.sid=s%3AHyTHsNyIhRvFINR3EGiXw1Kf12oufx84.jd6rEiCaqHsrM8eOGN1x%2ByzU%2BMatjM4l5S1Ekxhxdyo",
    "origin": "https://fiddle.jshell.net",
    "pragma": "no-cache",
    "referer": "https://fiddle.jshell.net/",
    "upgrade-insecure-requests": "1",
    "user-agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.142 Safari/537.36",
    "x-forwarded-port": "443"
  ,
  "json": 
    "stripeToken": "tok_1F07d72eZvKYlo2CqBprboVK"
  ,
  "url": "https://postman-echo.com/post"

Las partes importantes son headers.content-type y json attributes. Esto significa la librería stripe.js POSTenvió el formulario a través del application/x-www-form-urlencoded tipo MIME, y que el stripeToken estaba incluido.

Esto significa que su problema es uno o ambos de los siguientes:

  1. Si no ve un token generado en el navegador, su banda privada key es probablemente incorrecto. Comenzaría usando su prueba de franja privada keyparece que pk_test_xxx.
  2. Su servidor Laravel no está configurado correctamente. Muchos problemas potenciales, necesitaría más información y, lamentablemente, nunca he usado Laravel.

Por último, encontré un paquete de integración de Stripe para Laravel, podría valer la pena probarlo: https://github.com/cartalyst/stripe-laravel

Si sostienes alguna indecisión o disposición de prosperar nuestro ensayo eres capaz de escribir una referencia y con gusto lo leeremos.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *