登录 - wolfcon/NGA-API-Documents GitHub Wiki

10 登录

10.1 常规登录

因为NGA和178使用不同的cookie名字……所以登录了178之后NGA可能依然是未登录状态

这时可以访问

http://nga.178.com/nuke.php?__lib=login&__act=set_cookie

此地址会接受178的用户信息cookie

//需要的178 cookie
_sid //cookie id
_178c //用户id

//或者nga的cookie也可以
ngaPassportCid //cookie id
ngaPassportUid //用户id

验证成功会返回跳转,跟随服务器的跳转指示即可 返回信息大致如下,如果不能自动跟随跳转指示,可以依次访问返回数据中的地址

window.script_muti_get_var_store={
   "data":{
      "0":"http://nga.178.com/nuke.php?__lib=login&__act=set_cookie&token=..." //nga.178.com的登录
      "1":"http://bbs.ngacn.cc/nuke.php?__lib=login&__act=set_cookie&token=..." //bbs.ngacn.cc的登录
      }
   }

跳转后返回信息大致如下

window.script_muti_get_var_store={
   "data":{
      "0":"SUCCESS"
      }
   }

返回SUCCESS之后即为验证成功 此时客户端应接受服务器设置的cookie,即可变为登录状态

10.2 网页版登录

网页地址: https://bbs.nga.cn/nuke.php?__lib=login&__act=account&login

10.3 客户端登录

输入地址

/nuke.php?

输入参数

__lib //固定为 login
__act //固定为 login
name //用户名或uid或注册邮箱或绑定的手机号
password //密码
type //name参数为uid取值"id"  name参数为注册邮箱时取值"mail"  name参数为手机号时取值"phone" 其他情况可忽略
__ngaClientChecksum //客户端验证码 计算方式类似13.2 使用密码的crc32值替代uid
__output //输出格式 见1.1.1 有JSONP JSON XML等格式
__inchst //输入编码 见1.3

必须使用post提交数据 必须使用https

成功时返回信息

window.script_muti_get_var_store={
  "data":{
    "0":'登录成功',
    1:12345 //用户的uid
    2:.... //用户的cookieid 不定长字符串
    3:{//用户信息
      username : ...//用户名
      avatar : ....//用户的头像 格式见7.2
      }
    }
  ,
"time":1397451364
}

登录成功后客户端为所有的论坛请求添加cookie: ngaPassportUid=用户的uid ngaPassportCid=用户的cookieid

失败时返回信息

window.script_muti_get_var_store={
  "error":{
    "0":'密码错误',//错误信息
    }
  ,
"time":1397451364
}