Wie die post HTML-Formular von server-Seite?

Möchte ich in diesem post form von server-Seite ASP.NET/C#):

<FORM action="https://login:[email protected]/cgi-adm/refund.cgi" method=POST>
    <input type="hidden" name="merchant" value="12345678">
    <input type="hidden" name="transact" value="11111111">
    <input type="hidden" name="amount" value="2000">
    <input type="hidden" name="currency" value="208">
    <input type="hidden" name="orderid" value="11223344">
    <input type="hidden" name="md5key" value="cfcd208495d565ef66e7dff9f98764da">
    <input type="hidden" name="textreply" value="yes">
</FORM>

Ich versuche, WebClient.UploadValues. Mein code ist

 private void PostRefundRequest(Mediachase.Commerce.Orders.Payment payment)
    {
        WebClient webClient = new WebClient();
        NameValueCollection refundRequest = new NameValueCollection();
        PaymentMethodDto dibs = PaymentManager.GetPaymentMethodBySystemName("DIBS", SiteContext.Current.LanguageName);
        string merchant = GetParameterByName(dibs, DIBSPaymentGateway.UserParameter).Value;
        PurchaseOrder po = payment.Parent.Parent as PurchaseOrder;
        string orderid = po.TrackingNumber;
        string transact = payment.TransactionID;
        string amount = (payment.Amount * 100).ToString();
        refundRequest.Add("merchant", merchant);
        refundRequest.Add("transact", transact);
        refundRequest.Add("amount", amount );

        refundRequest.Add("currency", payment.Parent.Parent.BillingCurrency);
        refundRequest.Add("orderid", orderid);
        string md5 = GetMD5KeyRefund(merchant, orderid, transact, amount);
        refundRequest.Add("md5key", md5);
        refundRequest.Add("textreply", "yes");
        byte[] responseArray = webClient.UploadValues("https://<mylogin>:<mypassword>@payment.architrade.com/cgi-adm/refund.cgi", refundRequest);
    }

Habe ich versucht zu Debuggen, und alles scheint richtig zu sein, aber die API gibt HTTP 401 (nicht autorisiert). Meine Sorge ist: tut WebClient.UploadValues-support die url der API (enthält username/Passwort)

Danke.

  • Ich empfehle Sie Bearbeiten die Frage, lassen sich einige Felder zu schützen, dass Informationen, die (den md5key?)
  • es ist die demo-form von DIBS, es ist völlig harmlos 🙂
  • Werfen Sie einen Blick auf diese f/a, finden Sie den code, den Sie brauchen 😉 stackoverflow.com/questions/793755/...
  • Für den Anfang, zeigen Sie uns den code, den Sie versuchen zu laufen.
  • Ich aktualisierte die Frage, bitte werfen Sie einen Blick 🙂
  • Beachten Sie, dass in diesen Tagen würden Sie verwenden HttpClient, nicht WebClient.

InformationsquelleAutor Vimvq1987 | 2012-04-19
Schreibe einen Kommentar