4

私はこれについて多くの詳細を見つけるのに苦労しています。クレジットカードを処理し、curlを使用するAPIを使用する必要があります。すべてのドキュメントはphpであり、phpを使用することはできますが、私のメインサイトは完全にレイザービューエンジンを使用するMVC4です。これをphpから.netで使用できるものに変換する必要があります

$ curl https://api.stripe.com/v1/customers -u *private key here*: 
       -d "description=Customer for test@example.com" -d "card[number]=4242424242424242" 
       -d "card[exp_month]=12" -d "card[exp_year]=2013"

よろしくお願いします

4

1 に答える 1

5

カールのマニュアルページから

  • -u, --user <user:password>ユーザーの資格情報です
  • -d, --data <data>POSTデータです

したがって、これを次のように「デコード」できます。

using (var wc = new System.Net.WebClient())
{
    // data
    string parameters = string.Concat("description=", description, "&amp;card[number]=" , cardNumber, "&amp;card[exp_month]=", cardExpirationMonth, "&amp;card[exp_year]=", cardExpirationYear),
           url = "https://api.stripe.com/v1/customers;

    // let's fake it and make it was a browser requesting the data
    wc.Headers.Add("user-agent", "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; .NET CLR 1.0.3705;)");

    // credentials
    wc.Credentials = new System.Net.NetworkCredential("*private key here*", "");

    // make it a POST instead of a GET
    wc.Headers[HttpRequestHeader.ContentType] = "application/x-www-form-urlencoded";

    // send and get answer in a string
    string result = wc.UploadString(url, parameters);
}

既存の回答からのPOST微調整で更新されました。

于 2012-12-23T22:03:14.800 に答える