tutorial - ¿Cómo puedo evitar problemas de autenticación y tiempo utilizando Paypal''s Adaptive Payments API con Ruby?
rails api tutorial (4)
Tengo varios problemas al intentar acceder a la API Adaptive Payment Paypal de Ruby.
El problema principal con el que me topé inicialmente fue que Paypal requiere que sus encabezados HTTP estén en mayúsculas, pero Net :: HTTP no conserva el caso de los encabezados HTTP (los almacena ''descifrados'' y luego los saca ''en mayúsculas'' - por lo que si configura el encabezado ''X-PAYPAL-SECURITY-USERID'', se almacena como ''x-paypal-security-userid'' y sale como ''X-Paypal-Security-Userid'').
Obtuve errores de "500000 Internal Server" cuando traté de usar la API con estos encabezados incorrectos.
Así que paré en red Net :: HTTP para preservar el caso de los encabezados. Pero ahora estoy recibiendo excepciones de tiempo de espera:
Timeout::Error (execution expired):
/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/timeout.rb:60:in `rbuf_fill''
/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/net/protocol.rb:132:in `rbuf_fill''
/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/net/protocol.rb:104:in `read_all''
/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/net/http.rb:2220:in `read_body_0''
/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/net/http.rb:2173:in `read_body''
/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/net/http.rb:2198:in `body''
/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/net/http.rb:2137:in `reading_body''
/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/net/http.rb:1052:in `request''
/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/net/http.rb:543:in `start''
Entonces, volviendo a mi pregunta original: ¿Alguien tiene acceso exitoso a la API de pagos adaptables usando Ruby? Si es así, ¿cuál es tu secreto?
Creé una joya de pago adaptable de paypal para ruby. Lo estoy usando con éxito en nextsprocket.com
Aquí hay una publicación en el blog sobre esto: http://tommy.chheng.com/index.php/2009/12/paypal-adaptive-ruby-gem-released/
Pruébalo y mira si te ayudará.
Yo recomendaría mirar el SDK Ruby de PayPal. El código de ruby de ejemplo de Paypal está lleno de errores. He hecho una lista a continuación de los cambios que deberá realizar antes de que su código de ejemplo funcione. No estoy seguro de si ya corrigieron estos errores. Si no solo sigue los pasos a continuación.
SDK de Ruby: https://www.x.com/community/ppx/sdks#ADAPI
Cambios que deberá realizar:
1) Vaya a los archivos xxx_controller.rb y cambie la siguiente línea:
@paykey = @response ["payKey"]
a:
@paykey = @response ["payKey"] [0]
2) Elimine todos los espacios entre form_tag y (. En su código, escriben la etiqueta como <% = form_tag (setpayparallel_path, ....
esto debería ser <% = form_tag (setpayparallel_path, ....
3) Asegúrese de que todos los formularios estén cerrados con <% end%>
Hasta ahora, he descubierto que el SDK parece ser un gran lugar para comenzar a realizar pagos adaptables
Recomiendo https://github.com/jpablobr/active_paypal_adaptive_payment - Intenté utilizar la gema adaptativa de PayPal sin éxito, mientras que APAP funcionó muy bien. (Finalmente.)
Pago de Ruby PayPal adaptable Payments SDK gem https://github.com/paypal/adaptivepayments-sdk-ruby