Kann ich Paypal APIs von localhost testen?
UPDATE 1:
Laut diesem tutorial Mit PayPal ' s Instant Payment Notification mit PHP, PayPal zugreifen können, die lokal gehosteten websites, es sei denn, bestimmte router-ports geöffnet sind. Ist dies, weil die website ist über IPN
oder gilt das auch für alle PayPal-APIs?
URSPRÜNGLICHEN FRAGE:
Auf meinem laptop habe ich eine LAMP
Umwelt-setup, wenn ich den http://localhost
erstellen, website, bevor es live.
Für ein neues Projekt, benötige ich zur Nutzung der PayPal-APIs. Werde ich in der Lage sein, die Verwendung der localhost zum testen der PayPal-APIs, wenn ich meinen laptop anschließen, um das internet? Oder soll ich den upload meiner Webseite eine LAMPE host anderswo?
Sind Sie wahrscheinlich denken, was für eine dumme Frage, einfach mal ausprobieren, um zu sehen, ob es funktioniert. Ich habe es versucht und es funktioniert nicht und ich wollte ausschließen, diese Frage, bevor Sie gehen auf den nächsten Schritt.
InformationsquelleAutor der Frage oshirowanen | 2011-04-01
Du musst angemeldet sein, um einen Kommentar abzugeben.
Sollte es funktionieren.
Ich habe eine payment-integration bei paypal im letzten Jahr, und es funktionierte auf localhost ohne Probleme.
Sind Sie mit der paypal-sandbox für die Entwicklung?
https://developer.paypal.com/
InformationsquelleAutor der Antwort Mihai Frentiu
Wenn Sie Debuggen möchten Ihre IPN-code, den Sie brauchen, um Ihre server öffentlich zur Verfügung. Dies ist so, PayPal kann asynchron post zurück an Ihren server zu einem späteren Zeitpunkt, nachdem Sie eingereicht habe Ihre Anfrage. In der Regel ist dies ziemlich schnell, denke ich (innerhalb 15 Sekunden), aber es könnte länger sein.
Einen einfachen Weg, den ich gefunden habe, machen Sie einen Entwicklungs-server öffentlich verfügbar ist, verwenden Sie ngrok, oder forwardhq.com. Dies ermöglicht Ihnen, weiter zu entwickeln, in der Sie Ihre IDE wie normal, mit den code im debug-Modus. Wenn PayPal Bucht wieder zu Ihrem Endpunkt, können Sie Debuggen direkt in Ihrer IDE. Diese Dienste wickeln dies für Sie, so ist es sehr einfach zu tun, ohne technisches know-how.
Aus meinem Verständnis, dies geschieht durch einen "reverse SSH tunnel", die können Sie Ihre Website der öffentlichkeit zugänglich gemacht werden, die durch die Proxyfunktion es über einen server, ist bereits öffentlich verfügbar. Beachten Sie, dass, bevor Sie diese, Sie haben zu berücksichtigen, dass nicht nur PayPal können Sie schlagen Sie Ihre Website, sobald es öffentlich gemacht, aber jemand können, also bitte Rücksicht nehmen, zunächst.
Auch, wenn Sie haben Ihre eigenen public-facing-domain und kümmere mich nicht um das Spiel in einem terminal mit SSH können Sie angeblich etwas tun, wie dieses shell-Skript (kopiert aus diesem Kern)
Zu bekommen dies funktioniert, wie oben, würden Sie brauchen, um setzen Sie Folgendes in Ihre ~/.ssh/config-Datei:
Wenn Sie wollen nicht (oder können nicht) dies tun, dann werden die folgenden arbeiten:
InformationsquelleAutor der Antwort Brad Parks
Wenn http://localhost nicht bestätigen verwenden http://127.0.0.1
InformationsquelleAutor der Antwort Mark Gia Bao Nguyen
Sollte es funktionieren ohne problem, allerdings könnte es sich wählerisch, wenn Sie Sie senden in "ungültige URLs" für die return-urls und IPN-Nachricht-urls. Bedeutung, Versand in http://localhost/cancelpaypal.php als cancelURL könnte Ihnen sagen, dass es eine ungültige url.
Tue ich jedoch nicht denke, es sollte.
Dass öffnen von ports für den router würde nur benötigt werden für IPN, weil die Umleitung in den normalen Ablauf ist ein regelmäßiges "Location:" - header, daher ist es Ihr browser muss in der Lage sein, um Zugriff auf die Website (localhost)
InformationsquelleAutor der Antwort jishi
Gut, es die meisten Werke, aber auch Sie können setup eine temporäre lokale dns-Eintrag.
Alles, was Sie tun müssen, ist:
Also, wenn Sie Ihre browser-Abfrage für die website geholt werden von Ihren 127.0.0.1, etwas von Ihrer Notwendigkeit zu Spülen dns( /etc/init.d/nscd restart).
und das ist es alle, aber denken Sie daran, den Eintrag entfernen, wenn Sie bereit sind für die Produktion.
InformationsquelleAutor der Antwort jamesjara
Verwenden IPN Ihrem localhost hat Zugriff über das web. Eine Lösung, die auf jeden Fall funktioniert, ist die Verwendung einer virtuellen Maschine, installieren Sie VPN-Server, verbinden Sie Ihren Clinet über VPN und verwalten von virtuellen host-Umleitung an Ihre lokale IP-Adresse. Auf diese Weise, wenn Sie schalten Sie Ihre VPN-server zugegriffen werden kann, von außen und IPN gesendet werden können.
InformationsquelleAutor der Antwort axroth