Hishop.Plugins/OpenIdService.cs
(开头部分) 3KB这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。
namespace Hishop.Plugins
{
using System;
using System.Globalization;
using System.Web;
using System.Xml;
public abstract class OpenIdService : ConfigablePlugin, IPlugin
{
private const string FormFormat = "<form id=\"openidform\" name=\"openidform\" action=\"{0}\" method=\"POST\">{1}</form>";
private const string InputFormat = "<input type=\"hidden\" id=\"{0}\" name=\"{0}\" value=\"{1}\">";
protected OpenIdService()
{
}
protected virtual string CreateField(string name, string strValue)
{
return string.Format(CultureInfo.InvariantCulture, "<input type=\"hidden\" id=\"{0}\" name=\"{0}\" value=\"{1}\">", new object[] { name, strValue });
}
protected virtual string CreateForm(string content, string action)
{
content = content + "<input type=\"submit\" value=\"信任登录\" style=\"display:none;\">";
return string.Format(CultureInfo.InvariantCulture, "<form id=\"openidform\" name=\"openidform\" action=\"{0}\" method=\"POST\">{1}</form>", new object[] { action, content });
}
public static OpenIdService CreateInstance(string name)
{
if (string.IsNullOrEmpty(name))
{
return null;
}
Type plugin = OpenIdPlugins.Instance().GetPlugin("OpenIdService", name);
if (plugin == null)
{
return null;
}
return (Activator.CreateInstance(plugin) as OpenIdService);
}
public static OpenIdService CreateInstance(string name, string configXml, string returnUrl)
{
if (string.IsNullOrEmpty(name))
{
return null;
}
object[] args = new object[] { returnUrl };
Type plugin = OpenIdPlugins.Instance().GetPlugin("OpenIdService", name);
if (plugin == null)
{
return null;
}
OpenIdService service = Activator.CreateInstance(plugin, args) as OpenIdService;
if (!((service == null) || string.IsNullOrEmpty(configXml)))
{
XmlDocument document = new XmlDocument();
document.LoadXml(configXml);
service.InitConfig(document.FirstChild);
}
后面还有 26 行代码,购买后查看完整代码
24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明
AI 解读 AI
登录后可用,每次 10 算力,解读结果公开显示在下面。
还没有人解读过这个文件。
