这个项目用于把Bangumi的网页版封装成JavaScript可直接调用的API,使用TypeScript编写。
目标:在React Native / Web Browser(with Webpack / browserify) / Node均可直接调用。
目前版本尚未开放外部调用,只能在程序的index.ts里编写测试代码。
npm install webbangumiapi --save
(尚未Publish)
/*
Node没有fetch,所以需要为其引入一个Polyfill.
此处代码建议在工程入口执行,只需要执行一次。
*/
require('webbangumiapi').fetch = require('node-fetch');
/*
登录
项目按照ES6 Import规范编写,故Node调用需要.default。
*/
var Login = require('webbangumiapi/API/Login').default;
Login.request("Username", "Password").then(c => {
console.log("登录成功");
}).catch(d => {
console.log("登录失败");
})
/*
此处默认你已经使用Webpack / browserify / React Packager等工具打包
*/
import Login from 'webbangumiapi/API/Login';
Login.request("Username", "Password").then(c => {
console.log("登录成功");
}).catch(d => {
console.log("登录失败");
})
- 首页
- 登录
API/Login
- 正在观看列表
API/WatchingList
- 时间线(返回HTML)
API/Timeline
- 登录
- 单项信息
- 页面信息
API/Anime/Information
(部分完成)- 角色信息
- 制作人员
- 常去小组
- 正在观看
- 推荐目录
- 角色信息
API/Anime/Character
- 制作人员
API/Anime/Person
- 吐槽
API/Anime/Tucao
- 讨论
- 评论
- 页面信息
- 列表
- 排行榜
- 每日放送
- 标签
- 分类浏览
- 日志
- 动画
- 章节
- 设置章节进度
API/Anime/Watched
- 章节评论
API/Anime/EpDiscussion
- 章节信息
- 设置章节进度
- 设置整部动画观看进度
- 章节
- 人物信息
API/Person/
(未完成)- 出演列表
- 作品列表
- 收藏
- 书籍
- 单行本
- 设置整本书阅读进度
- 音乐
- 曲目
- 游戏
- 小组
- 随便看看
- 小组列表
- 话题 / 回复
- 查看
- 新建
- 编辑
- 删除
- 小组API
- 加入小组
- 创建小组
- 退出小组
- 设置小组
- 个人信息
- TO BE CONTINUED...
- 搜索
- TO BE CONTINUED...
npm install gulp typings -g
npm install
typings install
gulp watch
gulp build
- 不可依赖
request
等依赖于Node built-in module的库,也不可依赖jQuery
等依赖于DOM的库。 - 开发能使用的API以React Native可使用的API为准(例如网络访问只能使用
fetch
,在Node上用node-fetch
作为devDep)
不提供测试(用户名密码一改测试就懵逼了)
The MIT License