[英]HttpWebRequest / HttpWebResponse Base 64 problem
我正在嘗試發布到網址,以生成頁面。 該網址是在我的應用程序中的其他位置指定的,並且源自銀行。
我需要指定的參數是:Pareq-這是一個長字符串,在我的應用程序中的其他位置指定TermUrl-銀行用來發回(我的應用程序)MD的URL-一些隨機字符串來標識順序。
這里的相關參數是pareq-
我在頁面上具有以下代碼,並在最后具有Response.Write(response),以根據請求創建頁面。 但是,我收到從發布到url-PaReq消息的返回錯誤,該消息不是基於base64編碼的。
從我的代碼中,您可以看到我已嘗試對它進行64位編碼,但是在某些地方我出了錯....
HttpWebRequest req = (HttpWebRequest)WebRequest.Create(acsUrl);
byte[] toEncodeAsBytes = System.Text.ASCIIEncoding.ASCII.GetBytes(pareq);
string data = String.Format("PaReq={0}&TermUrl={1}&MD={2}", System.Convert.ToBase64String(toEncodeAsBytes), "www.return.com", "wsdfskdjglke");
byte[] buffer = Encoding.UTF8.GetBytes(data);
req.Method = "POST";
req.ContentType = "application/x-www-form-urlencoded";
req.ContentLength = buffer.Length;
req.CookieContainer = new CookieContainer(); // enable cookies
Stream reqst = req.GetRequestStream(); // add form data to request stream
reqst.Write(buffer, 0, buffer.Length);
reqst.Flush();
reqst.Close();
HttpWebResponse res = (HttpWebResponse)req.GetResponse();
Stream resst = res.GetResponseStream();
StreamReader sr = new StreamReader(resst);
string response = sr.ReadToEnd();
您需要先對Base64字符串進行編碼(使用Server.Encode),然后再將其與字符串連接。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.