本文整理汇总了C#中HttpServerResponse类的典型用法代码示例。如果您正苦于以下问题:C# HttpServerResponse类的具体用法?C# HttpServerResponse怎么用?C# HttpServerResponse使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
HttpServerResponse类属于命名空间,在下文中一共展示了HttpServerResponse类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: ParseToString
public string ParseToString(HttpServerResponse response)
{
if (response.Content == null)
return string.Empty;
return DEFAULT_CONTENT_ENCODING.GetString(response.Content);
}
示例2: ParseToString
public string ParseToString(HttpServerResponse response)
{
var version = GetHttpVersion(response.HttpVersion);
var status = (int)response.ResponseStatus;
var statusText = HttpCodesTranslator.Default.GetHttpStatusCodeText(status);
return $"{version} {status} {statusText}\r\n";
}
示例3: ConvertToBytes
public byte[] ConvertToBytes(HttpServerResponse response)
{
var responseBytes = new List<byte>();
foreach (var pipelinePart in _pipeline)
{
responseBytes.AddRange(pipelinePart.ParseToBytes(response));
}
return responseBytes.ToArray();
}
示例4: ConvertToString
public string ConvertToString(HttpServerResponse response)
{
var responseBuilder = new StringBuilder();
foreach (var pipelinePart in _pipeline)
{
responseBuilder.Append(pipelinePart.ParseToString(response));
}
return responseBuilder.ToString();
}
示例5: ParseToString
public string ParseToString(HttpServerResponse response)
{
var headersTextBuilder = new StringBuilder();
foreach (var header in response.Headers)
{
headersTextBuilder.Append($"{header.Name}: {header.Value}\r\n");
}
headersTextBuilder.Append("\r\n");
return headersTextBuilder.ToString();
}
示例6: PendingEvent
public PendingEvent (double? Temp, double? TempDiff, double? Light, double? LightDiff, bool? Motion, int Timeout,
HttpServerResponse Response, string ContentType, ISensorDataExport ExportModule)
{
this.temp = Temp;
this.tempDiff = TempDiff;
this.light = Light;
this.lightDiff = LightDiff;
this.motion = Motion;
this.timeout = DateTime.Now.AddSeconds (Timeout);
this.response = Response;
this.contentType = ContentType;
this.exportModule = ExportModule;
}
示例7: HttpGetRoot
private static void HttpGetRoot (HttpServerResponse resp, HttpServerRequest req)
{
string SessionId = req.Header.GetCookie ("SessionId");
resp.ContentType = "text/html";
resp.Encoding = System.Text.Encoding.UTF8;
resp.ReturnCode = HttpStatusCode.Successful_OK;
if (CheckSession (SessionId))
{
resp.Write ("<html><head><title>Actuator</title></head><body><h1>Welcome to Actuator</h1><p>Below, choose what you want to do.</p><ul>");
resp.Write ("<li><a href='/credentials'>Update login credentials.</a></li>");
resp.Write ("<li><a href='/set'>Control Outputs</a></li>");
resp.Write ("<li>View Output States</li><ul>");
resp.Write ("<li><a href='/xml?Momentary=1'>View data as XML using REST</a></li>");
resp.Write ("<li><a href='/json?Momentary=1'>View data as JSON using REST</a></li>");
resp.Write ("<li><a href='/turtle?Momentary=1'>View data as TURTLE using REST</a></li>");
resp.Write ("<li><a href='/rdf?Momentary=1'>View data as RDF using REST</a></li></ul>");
resp.Write ("</ul></body></html>");
} else
OutputLoginForm (resp, string.Empty);
}
示例8: HttpGetSensorData
private static void HttpGetSensorData (HttpServerResponse resp, string ContentType, ISensorDataExport ExportModule, ReadoutRequest Request)
{
networkLed.High ();
try
{
resp.ContentType = ContentType;
resp.Encoding = System.Text.Encoding.UTF8;
resp.Expires = DateTime.Now;
resp.ReturnCode = HttpStatusCode.Successful_OK;
ExportSensorData (ExportModule, Request);
} finally
{
networkLed.Low ();
}
}
示例9: HttpGetSensorData
private static void HttpGetSensorData (HttpServerResponse resp, HttpServerRequest req, string ContentType, ISensorDataExport ExportModule)
{
ReadoutRequest Request = new ReadoutRequest (req);
HttpGetSensorData (resp, ContentType, ExportModule, Request);
}
示例10: HttpGetTurtle
private static void HttpGetTurtle (HttpServerResponse resp, HttpServerRequest req)
{
HttpGetSensorData (resp, req, "text/turtle", new SensorDataTurtleExport (resp.TextWriter, req));
}
示例11: HttpGetXml
private static void HttpGetXml (HttpServerResponse resp, HttpServerRequest req)
{
HttpGetSensorData (resp, req, "text/xml", new SensorDataXmlExport (resp.TextWriter));
}
示例12: HttpGetSet
private static void HttpGetSet (HttpServerResponse resp, HttpServerRequest req)
{
string s;
int i;
bool b;
foreach (KeyValuePair<string,string> Query in req.Query)
{
if (!XmlUtilities.TryParseBoolean (Query.Value, out b))
continue;
s = Query.Key.ToLower ();
if (s == "alarm")
{
if (b)
{
AlarmOn ();
state.Alarm = true;
} else
{
AlarmOff ();
state.Alarm = false;
}
} else if (s.StartsWith ("do") && int.TryParse (s.Substring (2), out i) && i >= 1 && i <= 8)
{
digitalOutputs [i - 1].Value = b;
state.SetDO (i, b);
}
}
state.UpdateIfModified ();
resp.ContentType = "text/html";
resp.Encoding = System.Text.Encoding.UTF8;
resp.ReturnCode = HttpStatusCode.Successful_OK;
resp.Write ("<html><head><title>Actuator</title></head><body><h1>Control Actuator Outputs</h1>");
resp.Write ("<form method='POST' action='/set' target='_self'><p>");
for (i = 0; i < 8; i++)
{
resp.Write ("<input type='checkbox' name='do");
resp.Write ((i + 1).ToString ());
resp.Write ("'");
if (digitalOutputs [i].Value)
resp.Write (" checked='checked'");
resp.Write ("/> Digital Output ");
resp.Write ((i + 1).ToString ());
resp.Write ("<br/>");
}
resp.Write ("<input type='checkbox' name='alarm'");
if (alarmThread != null)
resp.Write (" checked='checked'");
resp.Write ("/> Alarm</p>");
resp.Write ("<p><input type='submit' value='Set'/></p></form></body></html>");
}
示例13: OutputCredentialsForm
private static void OutputCredentialsForm (HttpServerResponse resp, string Message)
{
resp.Write ("<html><head><title>Actuator</title></head><body><form method='POST' action='/credentials' target='_self' autocomplete='true'>");
resp.Write (Message);
resp.Write ("<h1>Update Login Credentials</h1><p><label for='UserName'>User Name:</label><br/><input type='text' name='UserName'/></p>");
resp.Write ("<p><label for='Password'>Password:</label><br/><input type='password' name='Password'/></p>");
resp.Write ("<p><label for='NewUserName'>New User Name:</label><br/><input type='text' name='NewUserName'/></p>");
resp.Write ("<p><label for='NewPassword1'>New Password:</label><br/><input type='password' name='NewPassword1'/></p>");
resp.Write ("<p><label for='NewPassword2'>New Password again:</label><br/><input type='password' name='NewPassword2'/></p>");
resp.Write ("<p><input type='submit' value='Update'/></p></form></body></html>");
}
示例14: HttpPostRoot
private static void HttpPostRoot (HttpServerResponse resp, HttpServerRequest req)
{
FormParameters Parameters = req.Data as FormParameters;
if (Parameters == null)
throw new HttpException (HttpStatusCode.ClientError_BadRequest);
string UserName = Parameters ["UserName"];
string Password = Parameters ["Password"];
string Hash;
object AuthorizationObject;
GetDigestUserPasswordHash (UserName, out Hash, out AuthorizationObject);
if (AuthorizationObject == null || Hash != CalcHash (UserName, Password))
{
resp.ContentType = "text/html";
resp.Encoding = System.Text.Encoding.UTF8;
resp.ReturnCode = HttpStatusCode.Successful_OK;
Log.Warning ("Invalid login attempt.", EventLevel.Minor, UserName, req.ClientAddress);
OutputLoginForm (resp, "<p>The login was incorrect. Either the user name or the password was incorrect. Please try again.</p>");
} else
{
Log.Information ("User logged in.", EventLevel.Minor, UserName, req.ClientAddress);
string SessionId = CreateSessionId (UserName);
resp.SetCookie ("SessionId", SessionId, "/");
resp.ReturnCode = HttpStatusCode.Redirection_SeeOther;
resp.AddHeader ("Location", "/");
resp.SendResponse ();
// PRG pattern, to avoid problems with post back warnings in the browser: http://en.wikipedia.org/wiki/Post/Redirect/Get
}
}
示例15: HttpGetRoot
private static void HttpGetRoot (HttpServerResponse resp, HttpServerRequest req)
{
networkLed.High ();
try
{
resp.ContentType = "text/html";
resp.Encoding = System.Text.Encoding.UTF8;
resp.ReturnCode = HttpStatusCode.Successful_OK;
resp.Write ("<html><head><title>Sensor</title></head><body><h1>Welcome to Sensor</h1><p>Below, choose what you want to do.</p><ul>");
resp.Write ("<li>View Data</li><ul>");
resp.Write ("<li><a href='/xml?Momentary=1'>View data as XML using REST</a></li>");
resp.Write ("<li><a href='/json?Momentary=1'>View data as JSON using REST</a></li>");
resp.Write ("<li><a href='/turtle?Momentary=1'>View data as TURTLE using REST</a></li>");
resp.Write ("<li><a href='/rdf?Momentary=1'>View data as RDF using REST</a></li>");
resp.Write ("<li><a href='/html'>Data in a HTML page with graphs</a></li></ul>");
resp.Write ("</body></html>");
} finally
{
networkLed.Low ();
}
}