Ich habe meinen Blog schon lange nicht mehr aktualisiert. Wie wir alle wissen, ist die .NET-Netzwerkprogrammierung beim Testen einer API sehr verbreitet. Wir verwenden Send WebRequest, um Funktionstests auf API-Ebene durchzuführen, und verwenden dann Selenium, um die Front-End-Überprüfung durchzuführen. Nehmen wir insbesondere die häufigste HTTP-Anfrage Wir müssen Daten übertragen, wir müssen
1) Adresse: Die Adresse wird als Webrequest-Parameter instanziiert und dann werden die entsprechenden Attribute festgelegt, z. B. Methode (Get oder Post usw.)
2) Daten: Daten werden als Datenstrom von HttpRequest geschrieben:
XmlResponse = null;
ResponseCode = HttpStatusCode.Unused;
Parameterverarbeitungsteil
//Daten formatieren
String Output = data.Aggregate(String.Empty , (current, keyValuePair) => current + ("&" + keyValuePair.Key + "=" + HttpUtility.UrlEncode(keyValuePair.Value) ()); = Encoding.ASCII.GetBytes(output);output.Substring(1,output.Length - 1)); method.ToUpperInvariant() == "GET" )
address=address+output;
//Datenverarbeitung des POST-Teils
WebRequest request = WebRequest.Create(address) as HttpWebRequest; 🎜>//Prozessbeitrag hinzufügen
if (request == null)
throw new Exception("WebRequest object is null."
request.Method = "POST"; request.ContentType = "application/x-www-form-urlencoded";
request.ContentLength = d.Length;
ServerResponse = String.Empty; Verarbeitungsteil
using (Stream dataStream = request.GetRequestStream())
{
dataStream.Write(d, 0, d.Length();
using (var Response = (HttpWebResponse)request .GetResponse())
ResponseCode = Response.StatusCode; if (myStream != null)
var repstream = New StreamReader (MyStream, Encoding.utf8);
ServerResponse = ReadStream.Readtoend (); }
LoadXml(); return true;
}
return false;