POST api/WebInterface/Personal/Login/WithOpenId
个人用户使用微信OPENID登陆,如果当前OpenId没有注册,则直接完成注册。
Request Information
URI Parameters
None.
Body Parameters
登陆的参数
PersonalLoginWithWechatParm| Name | Description | Type | Additional information |
|---|---|---|---|
| openid |
微信的OPENID |
string |
Required |
| wechatname |
在非静默授权模式下,获得的微信用户名 |
string |
None. |
Request Formats
application/json, text/json
{
"openid": "sample string 1",
"wechatname": "sample string 2"
}
application/xml, text/xml
<PersonalLoginWithWechatParm xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/DigitalScience.DataTransfer.Tour.V5.Parm.WebInterface"> <openid>sample string 1</openid> <wechatname>sample string 2</wechatname> </PersonalLoginWithWechatParm>
application/x-www-form-urlencoded
Sample not available.
application/bson
Binary JSON content. See http://bsonspec.org for details.
Response Information
Resource Description
个人用户使用微信OPENID登陆,如果当前OpenId没有注册,则直接完成注册。
PersonalLoginResult| Name | Description | Type | Additional information |
|---|---|---|---|
| errcode |
错误代码,0表示成功。 |
integer |
None. |
| errmsg |
错误的描述 |
string |
None. |
| memberid |
会员代码(电子门票系统中的唯一编码) |
integer |
None. |
| memberusername |
用户名(个人用户的用户登陆名) |
string |
None. |
| name |
个人用户的姓名或昵称 |
string |
None. |
| bindingtoagent |
返回当前用户是否绑定到代理商且作为代理商登陆成功,“1”表示成功。 |
string |
None. |
| agentid |
代理商的ID |
string |
None. |
| agenttypecode |
代理商类别代码 |
string |
None. |
| agenttypename |
代理商类别名称 |
string |
None. |
| agentpassword |
代理商密码的密文 按以下方式获得: byte[] KEY=SHA256(Utf8.GetBytes(官方会话KEY+UPPER_MD5(官方代理商登陆密码))) byte[] keyForDes = 取KEY的前24字节(合192位) byte[] value = TripleDes(Utf8.GetBytes(UPPER_MD5(代理商登陆密码)),KeyForDes) password=ToBase64String(value) 对UPPER_MD5()计算过程的描述: byte[] valueBuffer = Utf8.GetBytes(待运算的字符串) byte[] md5buffer = Md5(valueBuffer); string value = FormatString(md5Buffer,"x2)/*这个的意思是转换成bcd字符串,一个字节变成两个字符0xae= "ae",0x0a="0a"*/ string returnvalue = upper(value);全部转换成大写,仍然是每两个字符表示一个字节。 请不要指责这个脱库子放屁的处理,因为我们要兼容老版本,新版本只能如此。 |
string |
None. |
| agentkey |
代理商会话密钥的密文 按以下方式获得: byte[] KEY=SHA256(Utf8.GetBytes(官方会话KEY+UPPER_MD5(官方代理商登陆密码))) byte[] keyForDes = 取KEY的前24字节(合192位) byte[] value = TripleDes(Utf8.GetBytes(代理商的会话KEY),KeyForDes) password=ToBase64String(value) |
string |
None. |
| agentname |
代理商的单位名称 |
string |
None. |
| agentusername |
绑定的代理商用户名 |
string |
None. |
| openid |
OpenId |
string |
None. |
Response Formats
application/json, text/json
{
"errcode": 1,
"errmsg": "sample string 2",
"memberid": 3,
"memberusername": "sample string 4",
"name": "sample string 5",
"bindingtoagent": "sample string 6",
"agentid": "sample string 7",
"agenttypecode": "sample string 8",
"agenttypename": "sample string 9",
"agentpassword": "sample string 10",
"agentkey": "sample string 11",
"agentname": "sample string 12",
"agentusername": "sample string 13",
"openid": "sample string 14"
}
application/xml, text/xml
<PersonalLoginResult xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/DigitalScience.DataTransfer.Tour.V5.Result.WebInterface"> <agentid>sample string 7</agentid> <agentkey>sample string 11</agentkey> <agentname>sample string 12</agentname> <agentpassword>sample string 10</agentpassword> <agenttypecode>sample string 8</agenttypecode> <agenttypename>sample string 9</agenttypename> <agentusername>sample string 13</agentusername> <bindingtoagent>sample string 6</bindingtoagent> <errcode>1</errcode> <errmsg>sample string 2</errmsg> <memberid>3</memberid> <memberusername>sample string 4</memberusername> <name>sample string 5</name> <openid>sample string 14</openid> </PersonalLoginResult>
application/bson
Binary JSON content. See http://bsonspec.org for details.