networkRequest
void TPHttp::applyResource()
{
QJsonObject json;
json.insert("ProductCode","MoVdoSource");
json.insert("TempletType","");
QJsonDocument document;
document.setObject(json);
QByteArray byte_array=document.toJson(QJsonDocument::Indented);
QString str_1(byte_array);
qDebug("apply source:\n%s",str_1.toStdString().c_str());
request.setUrl(QUrl("http://mediax.sobeycache.com/version/getSoftLists"));
// 设定请求头
// request.setRawHeader("Host", "mediax.sobeycache.com");
// request.setRawHeader("Content-Length",QString::number(byte_array.size()).toStdString().c_str());
request.setRawHeader("Accept-Charset", "UTF-8");
request.setRawHeader("Content-type","text/plain");
request.setRawHeader("Connection", "keep-alive");
reply=manager->put(request,byte_array);
connect(reply, SIGNAL(readyRead()),
this, SLOT(applyReady()));
}
void TPHttp::applyReady()
{
QByteArray recData=reply->readAll();
QJsonParseError json_error;
QJsonDocument parse_doucment = QJsonDocument::fromJson(recData, &json_error);
QString str_1(recData);
qDebug("apply resources:\n%s",str_1.toStdString().c_str());
// if(json_error.error == QJsonParseError::NoError)
// {
// if(parse_doucment.isObject())
// {
// QJsonObject obj = parse_doucment.object();
// if(obj.contains("code"))
// {
// QJsonValue code_value = obj.take("code");
// double dcode;QString str_mess;
// if(code_value.isDouble())
// {
// dcode=code_value.toDouble();
// str_mess.setNum(dcode,'g');
// // QString("delta: %1").arg(d, 0, 'E', 3);
// }
// else if(code_value.isString())
// {
// str_mess=code_value.toString();
// }
// if(!str_mess.compare("0"))
// {
// qDebug("success login");
// genelogfile(m_usrname,m_password);
// m_bLogined=true;
// emit bLoginedChanged(m_bLogined);
// }
// else
// {
// if(!str_mess.compare("10001"))
// qDebug("password and user are error");
// else if(!str_mess.compare("10003"))
// qDebug("Don't have this user");
// else if(!str_mess.compare("10004"))
// qDebug("password is error");
// m_bLogined = false;
// // emit bLoginedChanged(m_bLogined);
// }
// }
// }
// }
}
第四节 MoVdo资源查询接口
-
接口调用地址
http://mediax.sobeycache.com/version/getSoftLists
-
功能
获取魔豆资源列表,可以根据模板类型(TempletType)进行过滤查询,不填模板类型表示查询所有资源。
-
调用方式
HTTP POST
-
参数
-
参数样例
{
"ProductCode" : "MoVdoSource",
"TempletType":"字幕模板"
}
-
参数说明
ProductCode:必填项,这里固定填MoVdoSource,
TempletType:可选项,根据在VBOSS新建资源时所设置的版本类型进行过滤;不填数据时,查询所有魔豆的资源
-
接口调用返回数据
接口调用成功后,返回如下格式的JSON 数据:
{
"status" : 1,
"result" : "",
"soft_list" : [
{
"id" : "30",
"product_id" : "10",
"product_code" : "MoVdoSource",
"inside_version" : "100",
"templet_type" : "字幕模板",
"versionname" : "主题",
"description" : "测试",
"version" : "1.0",
"filepath" : "http://api.vboss.sobey.com/static/Setup/dxwebsetup.exe",
"iconpath" : "http://api.vboss.sobey.com/static/Setup/Media10_1.0.0_icon.png",
"filesize" : "1",
"md5code" : "36A5D102EF30A2CA60200362F8ABB122",
"modified" : "2015-07-31 14:47:31"
}
]
}
五、接口调用出错CODE及其含义
当调用VBOSS用户注册管理各接口出错时,也会返回JSON数据,这时JOSN的code为非零数字,比如:
{
"code" : "10002",
"msg" : "缺少相应参数"
}
注:code值对应的信息如下:
0 : 操作成功
00001 : 网络异常
00002 : 响应超时
00003 : 数据库操作失败
00004 : 参数不合法
10001 : 用户名密码不匹配
10002 : 缺少相应参数
10003 : 查无此用户
10004 : 密码错误
10005 : pin值不正确
10006 : 用户名/邮箱/手机号已被注册
10007 : 用户名已被注册
10008 : 邮箱已被注册
10009 : 手机号已被注册
50001 : 加密/解密数据为空或不合法