1.快手登录修改

This commit is contained in:
老道 2022-11-01 00:18:32 +08:00
parent 4051dc6b52
commit 6964db17cf
6 changed files with 61 additions and 18 deletions

View File

@ -420,7 +420,7 @@ namespace FLSystem.Forms
private void barButtonItem46_ItemClick(object sender, ItemClickEventArgs e)
{
//TODO 快手
return;
//return;
LoginCps(CpsType.);
}

View File

@ -1383,7 +1383,7 @@ namespace FLSystem.Forms
case "快手订单管理":
{
//TODO 快手
throw new Exception("该功能尚未开发完成,请等待更新!");
//throw new Exception("该功能尚未开发完成,请等待更新!");
control = new cps_order_kuaishou(username);
break;
}
@ -2623,7 +2623,7 @@ namespace FLSystem.Forms
private void barButtonItem108_ItemClick(object sender, ItemClickEventArgs e)
{
//TODO 快手
return;
//return;
if (LoginCps(CpsType.) != null)
ItemClick(btn_cps_manage, e);
}

View File

@ -684,7 +684,7 @@ namespace Api.Framework.Cps
}
catch (Exception ex)
{
var appId = Token.appid;
var appId = Token?.appid;
#if DEBUG
appId = "33951412";

View File

@ -52,6 +52,7 @@ namespace Api.Framework.Cps
var result = SendServer("get_token", new { username = Member.username, enc_result = true });
if (result != null)
{
LogHelper.GetSingleObj().Debug("新token", $"{Member.cpstype.ToString()} {Member.usernick}({Member.username})" + " " + JsonConvert.SerializeObject(result));
if (result.ok)
{
return HttpHelper.JsonToObject<CpsToken>(result.message.ToString()) as CpsToken;
@ -166,6 +167,7 @@ namespace Api.Framework.Cps
string key = $"{Member.username}_{(int)Member.cpstype}";
if (Tokens.ContainsKey(key)) _token = Tokens[key];
else RefToken();
}
return _token;
}
@ -226,12 +228,17 @@ namespace Api.Framework.Cps
}
catch (Exception ex)
{
LogHelper.GetSingleObj().Error("cps请求异常", ex.Message + $"{result?.message} => {JsonConvert.SerializeObject(end)}");
LogHelper.GetSingleObj().Error("cps请求异常",
ex.Message + $"{result?.message}");
if (ex.Message == "未将对象引用设置到对象的实例。")
return null;
else
throw ex;
}
finally
{
//LogHelper.GetSingleObj().Error("cps请求异常..", $"{result?.message} => {JsonConvert.SerializeObject(end)}");
}
}
/// <summary>

View File

@ -53,9 +53,10 @@ namespace Api.Framework.Cps
}
#region
private string AppKey = "ks679199118973905155";
//private string Token = "ChFvYXV0aC5hY2Nlc3NUb2tlbhJAq13iHqm2rYA2FPaq_m0RU87-oshvTLzbFJXSnJMC0znK7kwq29tUnRKVow6LFrdSZ8mTRmrQvIWQxVL0FKTqCBoSbRuEMdwtT-6YPlmXD2hUvaWiIiBf7afrOrF3qxUPgNXpAg_nT6OrwDx27hZpMeG8P7OimigFMAE";
private string SignSecret = "910631f39a61e70f0b2c85a97ad4477e";
//private string AppKey = "ks679199118973905155";
////private string Token = "ChFvYXV0aC5hY2Nlc3NUb2tlbhJAq13iHqm2rYA2FPaq_m0RU87-oshvTLzbFJXSnJMC0znK7kwq29tUnRKVow6LFrdSZ8mTRmrQvIWQxVL0FKTqCBoSbRuEMdwtT-6YPlmXD2hUvaWiIiBf7afrOrF3qxUPgNXpAg_nT6OrwDx27hZpMeG8P7OimigFMAE";
//private string SignSecret = "910631f39a61e70f0b2c85a97ad4477e";
private string SignSecret = "71cc2e4896d2d035a1b9e556438cf746";
private JToken SendServer(string api, object data)
{
@ -116,7 +117,8 @@ namespace Api.Framework.Cps
{
Dictionary<string, string> param = new Dictionary<string, string>();
param["appkey"] = AppKey;
//param["appkey"] = AppKey;
param["appkey"] = Token.appid;
param["version"] = "1";
param["method"] = api;
//param["signMethod"] = "HMAC_SHA256";

View File

@ -27,7 +27,10 @@ namespace Api.Framework.Cps
internal fl_cps_member member { get; private set; }
//private string url = "https://cps.api.52cmg.cn/api/kuaishou.asmx/login";
private string url => $"{ApiClient.Setting.SystemConfig.cps_server_api}api/kuaishou.asmx/login";
//private string url => $"{ApiClient.Setting.SystemConfig.cps_server_api}api/kuaishou.asmx/login";
//https://cps.api.52cmg.cn/api/auth/login?type=1&state=yyyy
private string url => $"{ApiClient.Setting.SystemConfig.cps_server_api}api/auth/login?type=4&state=";
private void kuaishou_form_login_Load(object sender, EventArgs e)
{
@ -40,7 +43,7 @@ namespace Api.Framework.Cps
EO.Base.Runtime.Exception += Runtime_Exception;
//加载url
webControl1.WebView.LoadUrl(url);
webControl1.WebView.LoadUrl(url + Math.Abs(Guid.NewGuid().GetHashCode()));
webControl1.WebView.LoadCompleted += WebView_LoadCompleted;
webControl1.WebView.NewWindow += WebView_NewWindow;
//webControl.WebView.UrlChanged += WebView_UrlChanged;
@ -63,14 +66,15 @@ namespace Api.Framework.Cps
private void WebView_LoadCompleted(object sender, LoadCompletedEventArgs e)
{
//Console.WriteLine($"### {e.Url}");
Console.WriteLine($"### {e.Url}");
if (Regex.IsMatch(e.Url, @"https://login\.kwaixiaodian\.com/\?redirect_url=", RegexOptions.IgnoreCase))
{
webControl1.WebView.EvalScript("document.getElementsByClassName('account-type__item')[0].click()", false);
}
//else if (e.Url.StartsWith("http://cps.api.52cmg.cn/api/kuaishou.asmx/login_result"))
else if (e.Url.StartsWith($"{ApiClient.Setting.SystemConfig.cps_server_api}api/kuaishou.asmx/login_result"))
{
//else if (e.Url.StartsWith($"{ApiClient.Setting.SystemConfig.cps_server_api}api/kuaishou.asmx/login_result"))
else if (e.Url.Contains($"{ApiClient.Setting.SystemConfig.cps_server_api.Replace("https", "").Replace("http", "")}api/auth/callback4?code="))
{//https://cps.api.52cmg.cn/api/auth/callback4?code=c041fa95a93aa4434335c4d3e9a1773dec35a0d6c65b965a7259e5958b856992f2587f5a&state=
var text = webControl1.WebView.GetText();
CheckJson(text);
}
@ -88,11 +92,40 @@ namespace Api.Framework.Cps
EventClient.OnEvent(this, "登陆快手失败:" + html);
ShowError("登录失败,请查看页面具体错误!");
}
else if (json["ok"].ToString().ToLower() == "false")
ShowError(json["message"].ToString());
//else if (json["ok"].ToString().ToLower() == "false")
// ShowError(json["message"].ToString());
//else
//{
// var open_id = json["message"]?["open_id"]?.ToString();
// member = CpsClient.Members.FirstOrDefault(f => f.username == open_id && f.cpstype == CpsType.快手联盟);
// if (member == null)
// {
// member = new fl_cps_member() { username = open_id, cpstype = CpsType.快手联盟 };
// CpsClient.Members.Add(member);
// }
// //member.usernick = "";//TODO 这里获取用户页面上输入的账号,这里开发者写固定了,发布的时候修改
// if (string.IsNullOrWhiteSpace(member.usernick))
// {
// var wphUserNickForm = new kuaishou_form_usernick();
// if (wphUserNickForm.ShowDialog() == DialogResult.OK)
// member.usernick = wphUserNickForm.usernick;
// else
// {
// ShowError("未设置快手授权账号昵称,登录终止");
// return;
// }
// }
// member.logintime = DateTime.Now;
// member.cookies = cookie;
// member.is_valid = true;
// this.Close();
//}
else if (json["IsOk"].ToString().ToLower() == "false")
ShowError(json["ErrorMsg"].ToString());
else
{
var open_id = json["message"]?["open_id"]?.ToString();
var open_id = json["Data"]?["UserName"]?.ToString();
member = CpsClient.Members.FirstOrDefault(f => f.username == open_id && f.cpstype == CpsType.);
if (member == null)
{
@ -116,6 +149,7 @@ namespace Api.Framework.Cps
member.is_valid = true;
this.Close();
}
}
catch (Exception ex)
{
@ -127,7 +161,7 @@ namespace Api.Framework.Cps
{
try
{
Clipboard.SetDataObject(url);
Clipboard.SetDataObject(url + Guid.NewGuid().GetHashCode());
BaseForm.ShowSuccessAutoClose("复制成功,请粘贴到任意电脑的浏览器!\r\n注意如果页面显示空白请换个浏览器不要用系统自带的IE浏览器");
}
catch (Exception ex)