1,接口实例改写:
当前版本接口采取统一前缀
http://10.4.8.86:8081/itsapi/api/foreign/
,只需更改接口具体名字就行,但是课件大师的接口地址前缀差异较大。所以需封装一个新的axios对象。
- ITS版axios对象代码
baseURL: 'http://itsapi.speiyou.com/itsapi/api/foreign/',
// baseURL: 'http://10.4.8.86:8081/itsapi/api/foreign/',
timeout: 30000
});
- 改写代码 -- 给axios对象添加baseURL
class instanceNew {
constructor(baseURL) {
if(baseURL) {
this.baseURL = baseURL
} else {
this.baseURL = 'http://itsapi.speiyou.com/itsapi/api/foreign/'
}
}
create () {
return axios.create({
baseURL: this.baseURL,
timeout: 30000
})
}
}
2,具体接口替换
《1》login接口
- ITS版接口为
/login
,具体入参与输出见慧芳整理的接口文档,代码如下:
instance.post('/login', { randomPwd: randomPwd, area: self.selectedRegion.id })
- 课件大师接口
接口地址:http://clazz.api.speiyou.cn/stone-clazz/teacher/loginByTemporaryPasswordForIcs
方式: GET
返回实例:见课件大师的接口文档
代码如下:
let loginApi = new instanceNew('http://clazz.api.speiyou.cn/stone-clazz').create()
loginApi.get('/teacher/loginByTemporaryPasswordForIcs?randPass='+randomPwd)
具体差异:
1,ITS版为POST请求,课件大师为GET请求
2,ITS版为两个参数(randomPwd, area),课件大师只有(randPass)
《2》 获取公共资源接口
- ITS版本为
/getXesCommonInfo
,具体入参与输出见慧芳整理的接口文档,代码如下:
instance.get('/getXesCommonInfo')
- 课件大师接口
接口地址:http://kjds2.speiyou.com/ICS/cw/queryCommon.mvc
方式:GET
返回实例:见课件大师的接口文档
代码如下:
let getCommonInfoApi = new instanceNew('http://kjds2.speiyou.com/ICS/cw').create()
getCommonInfoApi.get('/queryCommon.mvc')
这两个接口只有接口名字区别。
《3》 查询老师最近一节课接口
- ITS版本为
/queryTeacherClassing
,具体入参与输出见慧芳整理的接口文档,代码如下:
instance.post('/queryTeacherClassing',
{
teacherId: self.user.id,
area: acache.getAreaCode()
})
- 课件大师接口
接口地址:http://clazz.api.speiyou.cn/stone-clazz/teacher/closestCurriculum
方式:GET
返回实例:见课件大师的接口文档
代码如下:
let queryTeacherClassApi = new instanceNew('http://clazz.api.speiyou.cn/stone-clazz/teacher').create()
queryTeacherClassApi.get('/closestCurriculum?teacherId='+self.user.id)
区别:
1,POST请求改为GET请求。
2,ITS版参数两个(teacherId, area),课件大师版只有一个参数(teacherId)
3,返回值结构不同://self.classData = response.data.data.teacherClassing; // ITS版本
self.classData = response.data.data; // 课件大师版本
《4》 查询老师几天内的所有课接口
- ITS版本为
/getClassTypeList_V3
,具体入参与输出见慧芳整理的接口文档,代码如下:
instance.post('/getClassTypeList_V3',
{
teacherId: self.user.id,
area: acache.getAreaCode(),
days: '7',
gradeId: self.classData.gradeId,
subjectId: self.classData.subjectId,
year: self.classData.year,
termId: self.classData.teamId,
classLevelId: self.classData.classlevelId
})
- 课件大师接口
接口地址:http://clazz.api.speiyou.cn/stone-clazz/ clazz/classTypeList
方式:GET
返回实例:见课件大师的接口文档
代码如下:
let takeLectureApi = new instanceNew('http://clazz.api.speiyou.cn/stone-clazz/clazz').create()
var apiParam = '/classTypeList?teacherId=' +
self.user.id +'&days=7&gradeId' + self.classData.gradeId +
'&subjectId=' +self.classData.subjectId+ '&year=' +self.classData.year+
'&termId=' +self.classData.teamId+ '&classLevelId=' + self.classData.classlevelId
takeLectureApi.get(apiParam)
区别:
1,POST改为GET
2,参数少了一个area参数,这个参数是在请求的Header里
3,返回值区别:var nowNumbweData = self.allCourseNumberData.find(function (v) { //return v.classlevelId == '0' return v.classlevelId == classLevelNew });
这段代码作用是在返回的数组对象中取出当前课所在的那一组对象。
4,HTML页面代码中用到了该接口返回值:《未清除完》
《5》 查询老师的课件接口
- ITS版本为
/takeLectureCacheURL_V4
,具体入参与输出见慧芳整理的接口文档,代码如下:
var params = {
areaCode: acache.getAreaCode(),
year: this.classData.year,
term: this.classData.teamId,
grade: this.classData.gradeId,
subject: this.classData.subjectId,
classLevel: this.classData.classlevelId,
lecture: this.classData.classNum
};
instance.post('/takeLectureCacheURL_V4', params)
- 课件大师接口
接口地址:http://kjds2.speiyou.com/ICS/cw/queryCourseware.mvc
方式:GET
返回实例:见课件大师的接口文档
代码如下:
let takeLectureApi = new instanceNew('http://kjds2.speiyou.com/ICS/cw').create()
let apiParam = '/queryCourseware.mvc?year='+params.year+
'&term=' +params.term+ '&grade=' +params.grade+
'&subject=' +params.subject+ '&classLevel=' +params.classLevel+
'&lecture=' +params.lecture+ '&areaCode=' +params.areaCode
takeLectureApi.get(apiParam)
区别:
1,POST改为GET
2,注意:这个接口没少area参数
3,返回值差别很大,课件大师的只有三个有用值(version, id,url)但是能完全替代ITS版,因为ITS返回太多无用的元素。
4,返回值结构变化,ITS为response.data.data
,课件大师为response.data.result
5,ITS的接口文档中有问题:接口地址出错http://180.76.162.82/ICS/cw/queryCourseware.mvc
应改为http://kjds2.speiyou.com/ICS/cw/queryCourseware.mvc