Passport/PassportService.asmx.cs

(完整代码) 1KB

using System;
using System.Collections.Generic;
using System.Data;
using System.Web;
using System.Web.Services;

namespace SSO.Passport
{
    /// <summary>
    /// 主站,提供令牌相关服务
    /// DEMO仅进行演示,正式布署请对接口添加安全验证
    /// </summary>
    [WebService(Namespace = "http://www.passport.com/")]
    [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
    [System.ComponentModel.ToolboxItem(false)]
    public class PassportService : System.Web.Services.WebService
    {
        /// <summary>
        /// 根据令牌获取用户凭证
        /// </summary>
        /// <param name="token">令牌</param>
        /// <returns></returns>
        [WebMethod]
        public object TokenGetCert(string token)
        {
            object cert = null;

            DataTable dt = Passport.Class.CacheManager.GetCacheTable();
            if (dt != null)
            {
                DataRow[] dr = dt.Select("token = '" + token + "'");
                if (dr.Length > 0)
                {
                    cert = dr[0]["cert"];
                }
            }

            return cert;
        }

        /// <summary>
        /// 清除令牌
        /// </summary>
        /// <param name="token">令牌</param>
        [WebMethod]
        public void TokenClear(string token)
        {
            DataTable dt = Passport.Class.CacheManager.GetCacheTable();
            if (dt != null)
            {
                DataRow[] dr = dt.Select("token = '" + token + "'");
                if (dr.Length > 0)
                {
                    dt.Rows.Remove(dr[0]);
                }
            }
        }

    }//end class
}

24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明

AI 解读 AI

登录后可用,每次 10 算力,解读结果公开显示在下面。

还没有人解读过这个文件。