0

PayPal IPN 用に独自の ASP.NET C# ハンドラー ページを作成しようとしています。

Web で見つけた多くのサンプルをたどりましたが、成功しませんでした。

最初のステップで失敗しているようです: PayPal からハンドラー ページに送信された即時支払い通知 (IPN) データをキャプチャします。

私は Web ページを持っています: PayPalIPNHandler.aspx.cs と Page_Load には次のものがあります:

protected void Page_Load(object sender, EventArgs e)
{

    byte[] param = Request.BinaryRead(Request.ContentLength);
    string strRequest = Encoding.ASCII.GetString(param);

}

いくつかのサンプル データを使用して、ハンドラー ページをテストします。

/sitename/PayPalIPNHandler.aspx?mc_gross=0.01&protection_eligibility=適格&address_status=confirmed&item_number1=&payer_id=pid&tax=0.00&address_street=23%20The%20Street&payment_date=12:38:53%20Jan%2010,%202012%20PST&payment_set-zip=20PST&payment_set2=完了IP4%204LP&mc_shipping=0.00&mc_handling=0.00&first_name=John&mc_fee=0.01&address_country_code=GB&address_name=John%20Smith¬ify_version=3.4&custom=&payer_status=unverified&business=x@googlemail.com&address_country=United%20Kingdom&num_cart_items=1&mc_handling1=0.00&address_city=Ipswich&verify_sign=verify&pa​​yer_email=x@gmail .com&mc_shipping1=0.00&txn_id=1&payment_type=インスタント&last_name=スミス&address_state=サフォーク&item_name1=&receiver_email=x@googlemail.com&payment_fee=&quantity1=1&receiver_id=w&txn_type=cart&mc_gross_1=0.01&mc_currency=GBP&residence_country=GB&transaction_subject=Shopping%20Cart&payment_gross=&ipn_track_id=Bu4

ただし、ContentLength は常に 0 のようで、strRequest は "" です。

私は明らかに非常にばかげた間違いを犯していますが、何が間違っているのかわかりません。

助けてください。

敬具

ウォルター

4

1 に答える 1

1

HTTP GET リクエストのコンテンツは常に空です。POST (および PUT および場合によっては DELETE) リクエストでコンテンツを送信することのみが有効です。あなたのコメントに基づいて、私はあなたが見る必要があると思います

Request.ServerVariables["QUERY_STRING"]
于 2012-09-10T22:43:41.683 に答える