在此之前波波分享了字节跳动抖音小程序开发中服务器对接接口的单文件SDK,今天之所以记录泛知识库添加课程的笔记,主要原因是对接接口过程中反复调试数据浪费了大量时间,为避免后期走弯路,故而记录下。
抖音泛知识库添加课程接口文档:https://microapp.bytedance.com/docs/zh-CN/mini-app/develop/server/pan-knowledge/product-add
在开发中主要遇到的问题是,发送参数与接口示例参数一致,但总是提示“product_type无效”。最初的时候以为是product_type可能存在其他值或参数类型不一致导致的,但是官方文档并没有对该参数解释更多。
后来在调试过程中无意打印了下http_build_query之后的数据,隐约中感觉可能是发送的数据在字节跳动的接口端解析不出来,导致的。后来经过数据一个一个调整,最终添加课程成功了。
以下是参考代码片段:(完整的不再赘述)
测试添加课程代码:
- public function addcourse(){
- $course_content = "本课程旨在通过视频的形式为大家分享科目二考试中相关驾驶操控的知识点";
- $lecture_intro = "李老师从事驾考培训10余年,经验丰富,技术过硬。";
- $param = ['course_name'=>"科目二方向操控视频课程",'market_price'=>129,'price'=>99,'id'=>1,
- 'qualification_uris'=>["product/resource/0de7d3984fedacacf115d84c643df8f5"],
- 'purchase_precaution'=>"购买成功后立即发货,用户可通过我们的小程序平台在线学习",
- 'course_content'=>$course_content,
- 'lecture_introduce'=>$lecture_intro];
- $result = DouyinService::addCourse($param);
- return $this->response(200,'请求成功',$result);
- }
接口返回结果SUCCESS:
- {"data":{"audit_id":"KNC202204061122410683671593","product_id":7083327918490927138}