2014-01-29 5 views
6

Dies ist die Standard Paypal Form für den Kauf von Sachen.

<form action="https://www.paypal.com/cgi-bin/webscr" method="post"> 
<input type="hidden" name="cmd" value="_xclick"> 
<input type="hidden" name="business" value="[email protected]"> 
<input type="hidden" name="item_name" value="Item Name"> 
<input type="hidden" name="currency_code" value="USD"> 
<input type="hidden" name="amount" value="0.00"> 
<input type="image" src="http://www.paypal.com/en_US/i/btn/x-click-but01.gif" name="submit" alt="Make payments with PayPal - it's fast, free and secure!"> 
</form> 

ich nicht dieses Formular, ich will mit AngularJS dies tun:

<button ng-click="checkOut()" class="btn btn-default">Buy</button> 

this.checkOut = function() { 
      var data = { 
       ... // handle all data 
      }; 

      $http.post('https://www.paypal.com/cgi-bin/webscr', data).success(function (data) { 
       console.log("success " + data); 
      }).error(function (data) { 
       console.log("error " + data); 
      }); 
     } 

Das gibt mir eine Fehlermeldung:

XMLHttpRequest nicht https://www.paypal.com/cgi-bin/webscr laden kann. Die Anforderung wurde an "https://www.paypal.com/home" umgeleitet, die für übergreifende Anforderungen, die Preflight erfordern, nicht zulässig ist.

Irgendwelche Vorschläge, wie man es angleJS macht, ohne das Formular?

+0

Wenn Sie die Dienste von Paypal nutzen möchten, müssen Sie ihre API verwenden, nicht nur ihren Code kopieren und erwarten, dass sie auf die gleiche Weise funktioniert. Was versuchst du zu tun? –

Antwort

3

PayPal unterstützt CORS derzeit nicht, daher ist es nicht möglich, mit $http an POST zu senden.