在使用webapi登录接口中,经常会遇到这样的问题 1、用户的密码经常变。 2、配置比较麻烦,经常需要开发人员指导。 新推出一种第三方集成密钥登录方式,比较好解决了上面的两个问题。 一、系统管理员生成集成密钥 |
二、实施人员把集成密钥拷贝、或者上传到第三方系统
三、第三方系统使用集成密钥登录,参考代码
引用Kingdee.BOS.WebApi.Client.dll、Newtonsoft.Json.dll
static void Main(string[] args)
{
ApiClient client = new ApiClient("http://localhost/K3Cloud/");
string path = System.AppDomain.CurrentDomain.BaseDirectory + "\\人力资源管理系统.cnf";//密钥文件的存储路径,要注意保护好这个密钥文件,防止被被别人窃取!
byte[] passports = System.IO.File.ReadAllBytes(path);
string loginResultJson = client.LoginBySimplePassport(Convert.ToBase64String(passports));
WebApiLoginResult loginResult = JsonConvert.DeserializeObject<WebApiLoginResult>(loginResultJson);
if (loginResult.IsSuccessByAPI)
{
Console.WriteLine("登录成功");
}
else
{
Console.WriteLine("登录失败!原因:" + loginResult.Message);
}
Console.ReadLine();
}
public class WebApiLoginResult
{
public string Message { get; set; }
public bool IsSuccessByAPI { get; set; }
public string MessageCode { get; set; }
public K3Context Context { get; set; }
}
public class K3Context
{
public string UserToken { get; set; }
public int UserId { get; set; }
public string UserName { get; set; }
public string SessionId { get; set; }
}
复制代码
总结:通过秘钥文件的封装,降低了集成实施的难度!
推荐阅读