POST api/Personal/Login/NONSTD/XYB/WithOpenId

个人用户使用湘易办OPENID登陆,如果当前OpenId没有注册,则直接完成注册。 本API是一个非标API,仅用于湘易办的鉴权之后的操作。 本API返回的个人用户登陆信息与微信等是相同的,后续的处理可以是相同的。 本API返回时,Agent相关的参数全部为空,因为永远是“直客”,不存在绑定的客户单位一说。

Request Information

URI Parameters

None.

Body Parameters

string

Request Formats

application/json, text/json

Sample:
"sample string 1"

application/xml, text/xml

Sample:
<string xmlns="http://schemas.microsoft.com/2003/10/Serialization/">sample string 1</string>

application/x-www-form-urlencoded

Sample:

Sample not available.

Response Information

Resource Description

个人用户使用湘易办OPENID登陆,如果当前OpenId没有注册,则直接完成注册。 本API是一个非标API,仅用于湘易办的鉴权之后的操作。 本API返回的个人用户登陆信息与微信等是相同的,后续的处理可以是相同的。 本API返回时,Agent相关的参数全部为空,因为永远是“直客”,不存在绑定的客户单位一说。

PersonalLoginResult
NameDescriptionTypeAdditional 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

Sample:
{
  "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

Sample:
<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>