ReqAuthenticate
客户端认证请求,对应响应OnRspAuthenticate。如果交易系统开启了强制终端认证,则必须认证通过后才能发起登陆;如果未开启,则不需要认证即可登陆,此时如果主动去认证,不管成功或失败,也不影响后续登陆。
◇ 1.函数原型
virtual int ReqAuthenticate(CThostFtdcReqAuthenticateField *pReqAuthenticateField, int nRequestID) = 0;
◇ 2.参数
pReqAuthenticateField:客户端认证请求
struct CThostFtdcReqAuthenticateField
{
///经纪公司代码
TThostFtdcBrokerIDType BrokerID;
///用户代码
TThostFtdcUserIDType UserID;
///用户端产品信息
TThostFtdcProductInfoType UserProductInfo;
///认证码
TThostFtdcAuthCodeType AuthCode;
///App代码
TThostFtdcAppIDType AppID;
};
UserProductInfo:客户端的产品信息,如软件开发商、版本号等。
例如:SFITTraderV100。该字段可以不填写。
AuthCode:认证码需要向期货公司申请得到
AppID:必填项,不然认证失败,如果没有则要向期货公司申请,申请的AppID必须遵循监控中心规范格式
nRequestID:请求ID,对应响应里的nRequestID,无递增规则,由用户自行维护。
◇ 3.返回
0,代表成功。
-1,表示网络连接失败;
-2,表示未处理请求超过许可数;
-3,表示每秒发送请求数超过许可数。
◇ 4.调用示例
CThostFtdcReqAuthenticateField a = { 0 };
strcpy_s(a.BrokerID, "9999");
strcpy_s(a.UserID, "1000001");
strcpy_s(a.UserProductInfo, "mytest");
strcpy_s(a.AuthCode, "MLX0LEA4L4UPUCBF");
strcpy_s(a.AppID, "mytest");
m_pUserApi->ReqAuthenticate(&a, nRequestID++);
◇ 5.FAQ
无