本文整理汇总了C#中HttpServer.RegisterAuthenticationMethod方法的典型用法代码示例。如果您正苦于以下问题:C# HttpServer.RegisterAuthenticationMethod方法的具体用法?C# HttpServer.RegisterAuthenticationMethod怎么用?C# HttpServer.RegisterAuthenticationMethod使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类HttpServer
的用法示例。
在下文中一共展示了HttpServer.RegisterAuthenticationMethod方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: Main
public static int Main (string[] args)
{
Log.Register (new ConsoleOutEventLog (80));
Log.Information ("Initializing application...");
HttpSocketClient.RegisterHttpProxyUse (false, false); // Don't look for proxies.
DB.BackupConnectionString = "Data Source=actuator.db;Version=3;";
DB.BackupProviderName = "Clayster.Library.Data.Providers.SQLiteServer.SQLiteServerProvider";
db = DB.GetDatabaseProxy ("TheActuator");
Console.CancelKeyPress += (object sender, ConsoleCancelEventArgs e) =>
{
e.Cancel = true;
executionLed.Low ();
};
// HTTP Interface
HttpServer HttpServer = new HttpServer (80, 10, true, true, 1);
int i;
Log.Information ("HTTP Server receiving requests on port " + HttpServer.Port.ToString ());
HttpServer.RegisterAuthenticationMethod (new DigestAuthentication ("The Actuator Realm", GetDigestUserPasswordHash));
HttpServer.RegisterAuthenticationMethod (new SessionAuthentication ());
credentials = LoginCredentials.LoadCredentials ();
if (credentials == null)
{
credentials = new LoginCredentials ();
credentials.UserName = "Admin";
credentials.PasswordHash = CalcHash ("Admin", "Password");
credentials.SaveNew ();
}
state = State.LoadState ();
if (state == null)
{
state = new State ();
state.SaveNew ();
} else
{
for (i = 0; i < 8; i++)
digitalOutputs [i].Value = state.GetDO (i + 1);
if (state.Alarm)
AlarmOn ();
else
AlarmOff ();
}
WebServiceAPI wsApi;
HttpServer.Register ("/", HttpGetRoot, HttpPostRoot, false); // Synchronous, no authentication
HttpServer.Register ("/credentials", HttpGetCredentials, HttpPostCredentials, false); // Synchronous, no authentication
HttpServer.Register ("/set", HttpGetSet, HttpPostSet, true); // Synchronous, http authentication
HttpServer.Register ("/xml", HttpGetXml, true); // Synchronous, http authentication
HttpServer.Register ("/json", HttpGetJson, true); // Synchronous, http authentication
HttpServer.Register ("/turtle", HttpGetTurtle, true); // Synchronous, http authentication
HttpServer.Register ("/rdf", HttpGetRdf, true); // Synchronous, http authentication
HttpServer.Register (wsApi = new WebServiceAPI (), true);
// HTTPS interface
// Certificate must be a valid P12 (PFX) certificate file containing a private key.
// X509Certificate2 Certificate = new X509Certificate2 ("Certificate.pfx", "PASSWORD");
// HttpServer HttpsServer = new HttpServer (443, 10, true, true, 1, true, false, Certificate);
//
// HttpsServer.RegisterAuthenticationMethod (new DigestAuthentication ("The Actuator Realm", GetDigestUserPasswordHash));
//
// foreach (IHttpServerResource Resource in HttpServer.GetResources())
// HttpsServer.Register (Resource);
//
// Log.Information ("HTTPS Server receiving requests on port " + HttpsServer.Port.ToString ());
// CoAP Interface
CoapEndpoint CoapEndpoint = new CoapEndpoint ();
Log.Information ("CoAP endpoint receiving requests on port " + CoapEndpoint.Port.ToString ());
//CoapEndpoint.RegisterLineListener (new ConsoleOutLineListenerSink (BinaryFormat.Hexadecimal, true));
for (i = 1; i <= 8; i++)
{
CoapEndpoint.RegisterResource ("do" + i.ToString () + "/txt", "Digital Output " + i.ToString () + ", as text.", CoapBlockSize.BlockLimit_64Bytes, false, 30, false,
CoapGetDigitalOutputTxt, CoapSetDigitalOutputTxt);
}
CoapEndpoint.RegisterResource ("do/txt", "Digital Outputs, as a number 0-255 as text.", CoapBlockSize.BlockLimit_64Bytes, false, 30, false,
CoapGetDigitalOutputsTxt, CoapSetDigitalOutputsTxt);
CoapEndpoint.RegisterResource ("alarm/txt", "Alarm Output " + i.ToString () + ", as text.", CoapBlockSize.BlockLimit_64Bytes, false, 30, false,
CoapGetAlarmOutputTxt, CoapSetAlarmOutputTxt);
foreach (CoapBlockSize BlockSize in Enum.GetValues(typeof(CoapBlockSize)))
{
if (BlockSize == CoapBlockSize.BlockLimit_Datagram)
continue;
//.........这里部分代码省略.........
示例2: Main
//.........这里部分代码省略.........
Record Rec = perHour [Pos];
Timestamp = Rec.Timestamp;
if (Timestamp.Date == CurrentTime.Date)
{
sumHours += Rec;
nrHours++;
} else
break;
}
Pos = perDay.Count;
while (Pos-- > 0)
{
Record Rec = perDay [Pos];
Timestamp = Rec.Timestamp;
if (Timestamp.Month == CurrentTime.Month && Timestamp.Year == CurrentTime.Year)
{
sumDays += Rec;
nrDays++;
} else
break;
}
// Sampling of new Sensor Values
Timer Timer = new Timer (SampleSensorValues, null, 1000 - DateTime.Now.Millisecond, 1000); // Every second.
// HTTP Interface
HttpServer HttpServer = new HttpServer (80, 10, true, true, 1);
Log.Information ("HTTP Server receiving requests on port " + HttpServer.Port.ToString ());
HttpServer.RegisterAuthenticationMethod (new DigestAuthentication ("The Sensor Realm", GetDigestUserPasswordHash));
HttpServer.RegisterAuthenticationMethod (new SessionAuthentication ());
credentials = LoginCredentials.LoadCredentials ();
if (credentials == null)
{
credentials = new LoginCredentials ();
credentials.UserName = "Admin";
credentials.PasswordHash = CalcHash ("Admin", "Password");
credentials.SaveNew ();
}
HttpServer.Register ("/", HttpGetRoot, HttpPostRoot, false); // Synchronous, no authentication
HttpServer.Register ("/html", HttpGetHtml, false); // Synchronous, no authentication
HttpServer.Register ("/historygraph", HttpGetHistoryGraph, false); // Synchronous, no authentication
HttpServer.Register ("/credentials", HttpGetCredentials, HttpPostCredentials, false); // Synchronous, no authentication
HttpServer.Register ("/xml", HttpGetXml, true); // Synchronous, http authentication
HttpServer.Register ("/json", HttpGetJson, true); // Synchronous, http authentication
HttpServer.Register ("/turtle", HttpGetTurtle, true); // Synchronous, http authentication
HttpServer.Register ("/rdf", HttpGetRdf, true); // Synchronous, http authentication
HttpServer.Register ("/event/xml", HttpGetEventXml, true, false); // Asynchronous, http authentication
HttpServer.Register ("/event/json", HttpGetEventJson, true, false); // Asynchronous, http authentication
HttpServer.Register ("/event/turtle", HttpGetEventTurtle, true, false); // Asynchronous, http authentication
HttpServer.Register ("/event/rdf", HttpGetEventRdf, true, false); // Asynchronous, http authentication
// HTTPS interface
// Certificate must be a valid P12 (PFX) certificate file containing a private key.
// X509Certificate2 Certificate = new X509Certificate2 ("Certificate.pfx", "PASSWORD");
// HttpServer HttpsServer = new HttpServer (443, 10, true, true, 1, true, false, Certificate);
//
// HttpsServer.RegisterAuthenticationMethod (new DigestAuthentication ("The Sensor Realm", GetDigestUserPasswordHash));
// HttpsServer.RegisterAuthenticationMethod (new SessionAuthentication ());