0

ASP.net(C#)で作成した2つのページがあります。最初のもの (shoppingcart.asp と呼ばれる) には、[今すぐ購入] ボタンがあります。2 つ目 (processpay.asp と呼ばれる) は、Google チェックアウトが HTTP リクエストを送信して支払いを処理するのを待つだけです。processpay.asp(つまり、clientid=3&itemid=10)に戻したいいくつかの変数を使用して、ポスト ステートメントを Google チェックアウトに送信したいのですが、POST HTTP ステートメントをフォーマットする方法がわかりません。 Google チェックアウトを機能させるには、どの設定を変更する必要がありますか。

どんなアイデアでも大歓迎です。

4

3 に答える 3

2

Google Checkout には、.NET アプリケーションと統合する方法に関するサンプル コードとチュートリアルがあります。

「サンプル コードを Web アプリケーションに統合する」というタイトルのセクションを確認してください。


ただし、サーバー側の POST を使用する場合は、HTTP ポストを送信し、応答を文字列として返す次のメソッドを確認することをお勧めします。

using System.Net;

string HttpPost (string parameters)
{ 
   WebRequest webRequest = WebRequest.Create("http://checkout.google.com/buttons/checkout.gif?merchant_id=1234567890");
   webRequest.ContentType = "application/x-www-form-urlencoded";
   webRequest.Method = "POST";

   byte[] bytes = Encoding.ASCII.GetBytes(parameters);

   Stream os = null;

   try
   { 
      webRequest.ContentLength = bytes.Length;
      os = webRequest.GetRequestStream();
      os.Write(bytes, 0, bytes.Length);      
   }
   catch (WebException e)
   {
      // handle e.Message
   }
   finally
   {
      if (os != null)
      {
         os.Close();
      }
   }

   try
   { 
      // get the response

      WebResponse webResponse = webRequest.GetResponse();

      if (webResponse == null) 
      { 
          return null; 
      }

      StreamReader sr = new StreamReader(webResponse.GetResponseStream());

      return sr.ReadToEnd().Trim();
   }
   catch (WebException e)
   {
      // handle e.Message
   }

   return null;
} 

パラメータは次の形式で渡す必要があります。name1=value1&name2=value2

于 2009-12-31T01:01:05.613 に答える
0

コードはおそらく次のようになります。

GCheckout.Checkout.CheckoutShoppingCartRequest oneCheckoutShoppingCartRequest =
  GCheckoutButton1.CreateRequest();

oneCheckoutShoppingCartRequest.MerchantPrivateData = "clientid=3";

GCheckout.Checkout.ShoppingCartItem oneShoppingCartItem =
  new GCheckout.Checkout.ShoppingCartItem();
oneShoppingCartItem.Name = "YourProductDisplayName";
oneShoppingCartItem.MerchantItemID = "10";

oneCheckoutShoppingCartRequest.AddItem(oneShoppingCartItem);
于 2010-11-29T16:48:29.810 に答える