Skip to content
ScutGame edited this page Mar 26, 2015 · 26 revisions

此章节介绍如何使用账号登陆服务器

账号登陆服务器

目前只提供IIS站点方式部署,去掉d=xxx格式的参数(与游戏参数不同之处)。

通讯格式

请求格式

使用Http的get方式请求,服务器以Handler参数分发请求(同游戏服务器的ActionId,这里可以是String类型),其中Sign签名参数必须要放在结尾(签名方式同游戏服一样)。

http://{Url}/?Handler={应用程序处理名称}&{query}&Sign=xxxxxx
  • 示例
http://pass.scutgame.com/?Handler=Regist&MobileType=1&Pid=Z17465&Pwd=1234567&IMEI=xxxxxx&ScreenX=960&ScreenY=860&RetailID=0000&sign=a53c02c3189d59c3ef5a4c0d0c96faec

响应格式

使用Json格式响应请求,消息结构如下:

{
    "StateCode": {错误码},
    "StateDescription": "{错误描述}",
    "Vesion": "{版本}",
    "Handler": "{请求的应用程序处理名称}",
    "Data": 
    {
       这里是业务层的数据对象
    }
}
  • 示例
{
    "StateCode": 0,
    "StateDescription": "",
    "Vesion": "1.0",
    "Handler": "Validate",
    "Data": 
    {
        "Token": "3074e807e73c4a899facb455aab1725e",
        "PassportId": "Z17465",
        "UserId": 1973013
    }
}

接口参数说明

使用的手机类型

  • 0:电脑PC
  • 1:iPod
  • 2:iPad
  • 3:iPhone(越狱)
  • 4:Phone
  • 5:Android
  • 6:Mac
  • 7:WindowsPhone7
  • 8:Unknow未知

响应错误码(StateCode)

  • 0: OK,成功的
  • 100:服务器异常
  • 101:签名错误
  • 102:无处理程序
  • 103:密码错误
  • 105:登录凭证无效
  • 106: 登录凭证过期

获取账号接口

客户端是不允许自定义账号的,统一由登录服务器系统自动分配账号。

应用程序处理名称:Passport

  • 请求参数

    • IMEI:String类型,手机设备识别码,可以为空;不为空时如果上次有注册过,返回上次使用的账号
  • 响应参数

    • PassportId:String类型,系统分配账号,如果已经使用IMEI获得过的,下发上次的账号
    • Password:String类型,6位随机密码,如果已经使用IMEI获得过的,下发上次的
  • 示例

请求:

http://pass.scutgame.com/?Handler=Passport&IMEI=00:02:32:65&sign=2bcc51b165368e139111914e12864a89
或
http://pass.scutgame.com/?Handler=Passport&IMEI=&sign=c519d93c5acb9c074086bc9df0c23285

响应:

{
    "StateCode": 0,
    "StateDescription": "",
    "Vesion": "1.0",
    "Handler": "Passport",
    "Data": 
    {
        "PassportId": "Z17465",
        "Password": "564613"
    }
}

登录接口

应用程序处理名称:Login

  • 请求参数

    • MobileType:【必传】Int整型,手机类型
    • Pid:【必传】String类型,获取账号接口下发的账号
    • Pwd:【必传】String类型,获取账号接口下发的密码
    • IMEI:String类型,手机设备识别码,可以为空;不为空时如果上次有注册过,返回上次使用的账号
    • ScreenX:Int整型,手机屏幕宽度
    • ScreenY:Int整型,手机屏幕高度
    • RetailID:String类型,客户打包的渠道编号
  • 响应参数

    • Token:String类型,登录授权成功获得的凭证,有效期(24H)
    • UserID:Int整型,用户的唯一编号
  • 示例

请求:

http://pass.scutgame.com/?Handler=Login&MobileType=0&Pid=Z17465&Pwd=564613&IMEI=&ScreenX=&ScreenY&RetailID=&sign=c792a4eb8a7761524ea6e512f0efc939

响应:

{
    "StateCode": 0,
    "StateDescription": "",
    "Vesion": "1.0",
    "Handler": "Login",
    "Data": 
    {
        "Token": "3074e807e73c4a899facb455aab1725e",
        "UserID": 1395265
    }
}    

注册接口

注册成功可直接获得授权成功的凭证,提供快速注册的方式。

应用程序处理名称:Regist

  • 请求参数

    • MobileType:【必传】Int整型,手机类型
    • Pid:【必传】String类型,获取账号接口下发的账号
    • Pwd:【必传】String类型,获取账号接口下发的密码
    • IMEI:String类型,手机设备识别码,可以为空
    • ScreenX:Int整型,手机屏幕宽度
    • ScreenY:Int整型,手机屏幕高度
    • RetailID:String类型,客户打包的渠道编号
  • 响应参数

    • Token:String类型,登录授权成功获得的凭证,有效期(24H)
    • UserID:Int整型,用户的唯一编号
  • 示例

请求:

http://pass.scutgame.com/?Handler=Regist&MobileType=0&Pid=Z17465&Pwd=564613&IMEI=&ScreenX=&ScreenY&RetailID=&sign=7ca97cdfa7460da2ff164c0cc8883768

响应:

{
    "StateCode": 0,
    "StateDescription": "",
    "Vesion": "1.0",
    "Handler": "Regist",
    "Data": 
    {
        "Token": "3074e807e73c4a899facb455aab1725e",
        "UserID": 1395265
    }
}    

游客改密码接口

应用程序处理名称:Password

  • 请求参数

    • PassportId:【必传】String类型,账号
    • Password:【必传】String类型,密码
  • 响应参数

  • 示例

请求:

http://pass.scutgame.com/?Handler=Password&PassportId=Z17465&Password=123456&sign=547bc476c3ab068203b76f9362eebd27

响应:

{
    "StateCode": 0,
    "StateDescription": "",
    "Vesion": "1.0",
    "Handler": "Password",
    "Data": 
    {
    }
}    

游戏服务器较验Token接口

应用程序处理名称:Validate

  • 请求参数

    • Token:【必传】String类型,登录凭证
  • 响应参数

    • Token:登录凭证
    • UserId:Int整型,用户的唯一编号
    • PassportId:String类型,账号
  • 示例

请求:

http://pass.scutgame.com/?Handler=Validate&Token=3074e807e73c4a899facb455aab1725e&sign=370114a38837acd248a3c3eb79d8b4a6

响应:

{
    "StateCode": 0,
    "StateDescription": "",
    "Vesion": "1.0",
    "Handler": "Validate",
    "Data": 
    {
        “Token”: “3074e807e73c4a899facb455aab1725e”,
        “UserId”: 1395265,
        “PassportId”: “Z17465”,
    }
}    
Clone this wiki locally