服务端程序经常性报错导致客户端无法正常登录,请求优化解决方案
特别说明:也可能是服务端经常性收到遇到公网恶意请求导致的服务端报错,如下黄色部分均为恶意请求
2024-02-19 18:49:52.5058 **.**.**.** 访问 PC_Connect.PC
2024-02-20 08:11:57.5449 84.54.51.75 访问
2024-02-20 08:11:57.6318 198.199.119.66 访问 _aliases
2024-02-20 08:11:57.6982 165.154.120.30 访问
2024-02-20 08:11:57.7510 165.154.120.30 访问
2024-02-20 08:11:57.8037 165.154.120.30 访问 sitemap.xml
2024-02-20 08:11:57.8535 165.154.120.30 访问 _cat\indices
2024-02-20 08:11:57.9189 165.154.120.30 访问 robots.txt
2024-02-20 08:11:58.0039 165.154.120.30 访问
2024-02-20 08:11:58.0664 91.92.252.155 访问 *
2024-02-20 08:11:58.1377 185.233.19.178 访问
2024-02-20 08:11:58.2480 106.75.126.54 访问
2024-02-20 08:11:58.2998 185.233.19.178 访问
2024-02-20 08:11:58.3584 106.75.126.54 访问
2024-02-20 08:11:58.4677 143.198.108.114 访问
错误所在事件:自定义函数,PC_Connect详细错误信息:调用的目标发生了异常。值不能为 null。参数名: s
PC_Connect:
Dim e As RequestEventArgs = args(0) '判断授权客户端
Dim jo As JObject = JObject.Parse(e.PlainText) '接受数据
' msgbox(jo.tostring)
Dim ok As Integer = 0
If jo("DDDId") Is Nothing Then
ok=2 'DDDId不存在
Return ""
Else
If jo("DDDId")<>"*******" Then '暗号对接
ok=3 'DDDId不正确
Else
ok=1 'DDDId正确
End If
End If
''DDDId正确后判断 客户端授权id
Dim dr As DataRow
If ok=1 Then 'DDDId正确
dr= DataTables("客户端授权表").Find("ID = '" & jo("ComputerId").tostring & "'") '查找被授权电脑 '名称 = '" & pts(0) & "' And修改名称可以使用!
If dr Is Nothing Then '判断此授权对象不存在
ok=11 '"未授权,请联系管理员!" '返回提示信息
Dim r As Row=Tables("客户端授权表").AddNew
r("名称") =jo("HostName").tostring '电脑名称
r("IP")=jo("ComputerIP").tostring 'ip
r("ID")=jo("ComputerId").tostring 'id
r("授权") =True '*******************************测试暂时 开启默认授权***********************
r("最后连接时间")= Date.Now
r.Save
Else
If dr("授权")=False Or dr("授权码")=Nothing Then '如果密码错误
ok=12 '"未授权,请联系管理员!" '返回提示信息
Else
ok=666 '全部授权正确
dr("名称")=jo("HostName").tostring '电脑名称 '更新信息
dr("IP")=jo("ComputerIP").tostring 'ip
dr("最后连接时间")= Date.Now
dr.Save
End If
End If
End If
Dim newjo As New JObject '生成权限签证===========================================================================
newjo("OK")=ok
If ok=666 Then
newjo("GetID")=dr("授权码").tostring
End If
'msgbox(newjo.ToString)
e.WriteString(newjo.ToString)
[此贴子已经被作者于2024/2/20 8:27:14编辑过]