Http Post 요청 Basic 검증
///
/// HttpPost Basic
///
///
///
/// Basic
/// Basic
///
public static string HttpPostBasicJson(string Url, object postDataStr, string userName, string pwd)
{
string strRespone = "";
string json = JsonHelper.ConvertToJson(postDataStr);
ServicePointManager.DefaultConnectionLimit = 300;
System.GC.Collect();
CookieContainer cookieContainer = new CookieContainer();
//
HttpWebRequest request = null;
HttpWebResponse SendSMSResponse = null;
Stream dataStream = null;
StreamReader SendSMSResponseStream = null;
try
{
request = WebRequest.Create(Url) as HttpWebRequest;
request.Method = "POST";
request.KeepAlive = false;
request.ServicePoint.ConnectionLimit = 300;
request.AllowAutoRedirect = true;
request.Timeout = 100000;
request.ReadWriteTimeout = 100000;
// Basic
string code = Convert.ToBase64String(Encoding.ASCII.GetBytes(string.Format("{0}:{1}", userName, pwd)));
// Authorization HTTP
request.Headers.Add("Authorization", "Basic " + code);
request.ContentType = "application/json";
byte[] bytes = Encoding.UTF8.GetBytes(json);
request.Proxy = null;
request.CookieContainer = cookieContainer;
using (dataStream = request.GetRequestStream())
{
dataStream.Write(bytes, 0, bytes.Length);
}
SendSMSResponse = (HttpWebResponse)request.GetResponse();
if (SendSMSResponse.StatusCode == HttpStatusCode.RequestTimeout)
{
if (SendSMSResponse != null)
{
SendSMSResponse.Close();
SendSMSResponse = null;
}
if (request != null)
{
request.Abort();
}
return null;
}
SendSMSResponseStream = new StreamReader(SendSMSResponse.GetResponseStream(), Encoding.GetEncoding("utf-8"));
strRespone = SendSMSResponseStream.ReadToEnd();
}
catch (System.Exception ex)
{
if (dataStream != null)
{
dataStream.Close();
dataStream.Dispose();
dataStream = null;
}
if (SendSMSResponseStream != null)
{
SendSMSResponseStream.Close();
SendSMSResponseStream.Dispose();
SendSMSResponseStream = null;
}
if (SendSMSResponse != null)
{
SendSMSResponse.Close();
SendSMSResponse = null;
}
if (request != null)
{
request.Abort();
}
throw ex;
}
finally
{
if (dataStream != null)
{
dataStream.Close();
dataStream.Dispose();
dataStream = null;
}
if (SendSMSResponseStream != null)
{
SendSMSResponseStream.Close();
SendSMSResponseStream.Dispose();
SendSMSResponseStream = null;
}
if (SendSMSResponse != null)
{
SendSMSResponse.Close();
SendSMSResponse = null;
}
if (request != null)
{
request.Abort();
}
}
return strRespone;
}
키 코드:
// Basic
string code = Convert.ToBase64String(Encoding.ASCII.GetBytes(string.Format("{0}:{1}", userName, pwd)));
// Authorization HTTP
request.Headers.Add("Authorization", "Basic " + code);
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
WebView2를 Visual Studio 2017 Express에서 사용할 수 있을 때까지Evergreen .Net Framework SDK 4.8 VisualStudio2017에서 NuGet을 사용하기 때문에 패키지 관리 방법을 packages.config 대신 PackageReference를 사용해야...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.