Contest请求数据协议
 客户端请求时,只要填写index字段就行了。服务端拿到请求后,判断index的值,约定如果index的值为-1时,表示请求的是整个比赛的列表,server从OnlineJudge上拿到当前所有的比赛列表填入data字段,格式是每个比赛为两行,第一行为比赛的title,第二行是比赛的id(id唯一标识一个比赛),然后发回客户端。如果index不为-1的话,那么说明客户端是请求当前id为index的比赛的所有题目。Server拿到对应比赛的所有题目后,填入data字段,格式为第一行题目的title,第二行是题目的label。(由于OnlineJudge的设计结构,比赛和普通的题目是不一样设计,所以比赛中的题目是按照contest的id和题目的label确定的)。
2.    下载服务
目前server提供两种下载:判题核心下载,测试数据下载。
判题核心以二进制传输,每次传输的最大长度是512字节。
测试数据以字符形式传输,每次传输最大长度为512字节。
 
客户端需要填入fileName字段,然后请求服务器发出相应的判题核心。目前的核心有两部分,”core.exe” “sandbox.dll”目前的判题核心只能在windows平台下使用。
服务端接收到请求判题核心下载时,从本地读到判题核心,然后分段发给客户。服务端以byte数组发送给客户端,每次512字节。
 
客户端请求数据时,需要填入problemId ,FileName。ProblemId为题目标号,FileName为 problemId+”.in”或者+”.out”,分别为测试数据的输入和输出。
服务端收到请求数据下载时,从本地读到测试数据,分段发送给客户。服务端把从文件中读到的数据填入Text中,并且Length中填写数据的长度,一般为512,当到最后结束的时候,可能小于512。当读完之后,Length填0标记发送结束。
上一篇:VC++计算机与其网络信息取证系统的开发
下一篇:OpenCV基于智能手机的人脸检测系统设计

架设Linux(2.6内核)的服务器集群【745字】

Linux内核的键盘模拟实现【1538字】

ARM核的AT75C220及其茬指纹识...

于PCI9656设备驱动程序的...

Linux内核源代码的阅读和工具介绍【836字】

实现宽带综合业务数字网...

IOS网络化教师教学评估考核系统设计

10万元能开儿童乐园吗,我...

中国学术生态细节考察《...

C#学校科研管理系统的设计

神经外科重症监护病房患...

国内外图像分割技术研究现状

志愿者活动的调查问卷表

AT89C52单片机的超声波测距...

承德市事业单位档案管理...

公寓空调设计任务书

医院财务风险因素分析及管理措施【2367字】