Skip to content

GitLab

  • Projects
  • Groups
  • Snippets
  • Help
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in
P portal
  • Project overview
    • Project overview
    • Details
    • Activity
  • Issues 0
    • Issues 0
    • List
    • Boards
    • Labels
    • Service Desk
    • Milestones
  • Merge requests 0
    • Merge requests 0
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Operations
    • Operations
    • Incidents
    • Environments
  • Packages & Registries
    • Packages & Registries
    • Container Registry
  • Analytics
    • Analytics
    • Value Stream
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Members
    • Members
  • Activity
  • Create a new issue
  • Jobs
  • Issue Boards
Collapse sidebar
  • 科探开源
  • portal
  • Wiki
    • 门户v2 api 文档
  • 01.Portal Rest API v2

Last edited by asdu Dec 21, 2020
Page history

01.Portal Rest API v2

1. Portal API 概述(V2)

1.1. 概述

作为智慧校园的信息化入口,综合信息门户应包括对各种不同场景、不同身份、不同信息或服务的获取方式进行有效的整合。传统上由CMS、Portal、移动App portal等多种方式组合而成,但内容、服务、包括服务的移动版本等都是相互割裂的,既造成了使用体验不佳,同时对后台系统的维护、信息的一致性等难题均始终无法有效解决。融合门户提供了一体化平台,提供多种形式的数据集成,有效了集成了各种数据服务。 Portal提供遵从 REST 规范的 HTTP API,以供开发者远程调用融合门户提供的服务

1.2.目标

  • 提供标准的数据接口,实现第三方推送数据到融合门户平台
  • 通过标准的oauth2授权方式,实现对第三方平台推送数据的授权
  • 通过接口管理平台实现对第三方接口的数据对接、提取、转换、加载的功能
  • 通过可视化的管理界面,配置第三方对数据访问权限的授权
  • 对接统一身份认证,统一体验,场景平滑切换
  • 基于不同角色、部门的内容授权和展示

1.3.功能概括

  • 智慧校园的信息展现门户。
  • 个人校内服务的一体化办理门户。
  • 门户CMS信息管理。
  • 五个中心:消息中心、个人中心、新闻中心、日程中心、应用中心。
  • 各院系子门户的可扩展对接。
  • 基于角色、部门的内容授权和展示

1.3.1 功能详情:

  • 首页
    • 教师身份:集成“邮件”“流量”“财务”“一卡通”“图书信息”等
    • 学生身份:集成“个人信息”“一卡通信息”“日程课表”等
  • 校内信息
    • 教师身份:集成“新闻头条”“部门文件”“公告通知”等信息
    • 学生身份:集成“新闻头条”“团委信息”“校园活动”等信息
  • 日程中心
    • 教师身份:集成“新闻头条”“团委信息”“校园活动”等信息
    • 学生身份:集成“课表”“个人日常”,显示当前周日程信息
  • 应用中心
    • 教师身份:集成办公应用“OA”“科研系统”“财务系统”等入口
    • 学生身份:集成汇文图书馆系统、本科生系统等入口
  • 个人中心
    • 教师身份:集成“个人信息”“一卡通信息”“账户设置”“职务职级”“图书信息”等
    • 学生身份:集成“个人信息”“一卡通信息”“图书信息”等

1.4.对接步骤

1.4.1 注册应用授权

  1. 在平台授权申请应用授权
  2. 通过access_token访问相应授权数据

1.4.2 访问数据授权

  1. 通过融合门户数据平台后台建立相关角色
  2. 分配角色给第三方用户
  3. 通过角色授权需要访问的内容

1.5.接口主要分为12大类:

API类型 描述 状态
Resource API 各种新闻等其他资源信息新增、删除、查询 正常
App API 各类应用信息新增、删除、查询 正常
Event API 会议日程、个人日程等日程类型信息的新增、删除、查询 正常
Message Subscription 用户订阅各类栏目信息新增、删除、查询 正常
PageLayout API 提供根据用户权限显示页面结构数据的查询 正常
3rd API 管理第三方接口ETL(提取、转换、加载)处理相关数据的查询 正常
User API 用户基本信息的查询 正常
Taxonomy API 系统所有分类信息新增、删除、查询 正常
Personal Data API 个人数据中心包括不限于基本信息、资产、财务、一卡通、图书借阅、科研信息等 正常
File API 管理文件新增、删除、查询 正常
Flag API 默认收藏、用户收藏、点赞等类型的接口 正常
Message Notify API 消息通知,提供各种渠道的消息推送接口 进行中

1.6.请求方式

  • 支持 HTTPS
  • 支持 POST

1.7.鉴权方式

  • 采用基础鉴权的方式,HTTP Header(头)里加一个字段( Key/Value 对):
  1. 前后端完全分离方式
Authorization: Bearer access_token
  • 其中 access_token 是通过认证中心授权获取到的access_token
  • 获取认证,请到认证中心申请应用认证。
  1. 基于cookie方式
X-Csrf-Token:2pxAx1eWYF6ARAhLB49FTwsSYjzihBwwgbaC8ZGEuHU
  • 通过 http://{site}/session/token 获取 X-Csrf-Token 的值

1.8.协议描述

请求URL:https://{site_uri}/portal/api/v2/{entity_type}/{bundle}

1.9.相关术语

术语 描述 实例
Entity types 实体类型是一个基础类别 user,file,commment,resourcem,app,event,taxonomy,subscription
Bundles A bundle 扩展类 news,note,profile event
Fields 一个类别的成员、属性、元素、或者字段实例 title,field_image,create,status
Entity 具体的一个实例 class entity/{id}
Clone repository
  • Home
  • 数据管理手册
    • 094.Views twig 配置
    • ETL01.数据管理使用手册 V2.0
    • ETL02.Source 数据请求 data_fetcher_plugin
    • ETL03.Source 解析 data_parser_plugin
    • ETL04.Source 认证插件 authentication
    • ETL05.Porcess plugins 明细
    • ETL06.URL endpoint 数据管理E
    • ETL07.Mysql 数据管理
    • ETL08.MSSQL 数据管理
    • ETL09.Oracle 数据管理
    • ETL10.Token 列表
  • 门户V2 API 文档
    • 01.Portal Rest API v2
    • 01.Resource API
    • 02.App API
View All Pages