Revamp the doc. Add LICENSE file. (#580)

1. 参数现在和英文版一样使用 list
2. 全角`,`, `:`改半角`,`, `:`
3. 补全部分遗漏
4. 修改部分格式
This commit is contained in:
Henry Wang
2018-08-30 14:41:39 +01:00
committed by DIYgod
parent 2ac083060a
commit 3591447e02
5 changed files with 109 additions and 88 deletions

21
LICENSE Normal file
View File

@@ -0,0 +1,21 @@
MIT License
Copyright (c) 2018 DIYgod
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

View File

@@ -20,7 +20,7 @@ We welcome all pull requests. Suggestions and feedback are also welcomed [here](
### Access the target data source API
Use [axios](https://github.com/axios/axios) to access the target data source API, assign the acquired title, link, description and datetime to ctx.state.datarefer to Data for the list of parameters, typically it looks like this: [/routes/bilibili/bangumi.js](https://github.com/DIYgod/RSSHub/blob/master/routes/bilibili/bangumi.js)
Use [axios](https://github.com/axios/axios) to access the target data source API, assign the acquired title, link, description and datetime to ctx.state.data (refer to Data for the list of parameters) , typically it looks like this: [/routes/bilibili/bangumi.js](https://github.com/DIYgod/RSSHub/blob/master/routes/bilibili/bangumi.js)
### Acquire data from HTML
@@ -72,17 +72,17 @@ Reference article:
- [Create a podcast - Apple](https://help.apple.com/itc/podcasts_connect/?lang=en#/itca5b22233a)
- [Podcast best practices - Apple](https://help.apple.com/itc/podcasts_connect/?lang=en#/itc2b3780e76)
- Itunes podcast XML generator https://codepen.io/jon-walstedt/pen/jsIup
- Feed Validation Service https://podba.se/validate/?url=https://rsshub.app/ximalaya/album/299146/
- Itunes podcast XML generator : https://codepen.io/jon-walstedt/pen/jsIup
- Feed Validation Service : https://podba.se/validate/?url=https://rsshub.app/ximalaya/album/299146/
these datas can make your podcast subscribeable
these datas can make your podcast subscribeable:
```js
ctx.state.data = {
title: '', // The feed title
link: '', // The feed link
itunes_author: '', // The channel's author, you must fill this data.
itunes_category '',// Channel category
itunes_category: '',// Channel category
image: '', // Channel's image
description: '', // The feed description
item: [

View File

@@ -4,23 +4,23 @@ sidebar: auto
# 部署
部署 RSSHub 非常简单如果您在部署过程中遇到无法解决的问题请到 [issues](https://github.com/DIYgod/RSSHub/issues) 寻找类似的问题或 [向我们提问](https://github.com/DIYgod/RSSHub/issues/new)我们会尽快给您答复
部署 RSSHub 非常简单, 如果您在部署过程中遇到无法解决的问题请到 [issues](https://github.com/DIYgod/RSSHub/issues) 寻找类似的问题或 [向我们提问](https://github.com/DIYgod/RSSHub/issues/new), 我们会尽快给您答复.
## 手动部署
部署 `RSSHub` 最直接的方式您可以按照以下步骤将 `RSSHub` 部署在您的 电脑、服务器或者其他任何地方
部署 `RSSHub` 最直接的方式, 您可以按照以下步骤将 `RSSHub` 部署在您的 电脑、服务器或者其他任何地方.
### 在安装之前
在安装 RSSHub 之前请确保您的电脑中已经安装了 [Git](https://git-scm.com/) 和 [Node.js >= 8.0.0](https://nodejs.org/)
在安装 RSSHub 之前, 请确保您的电脑中已经安装了 [Git](https://git-scm.com/) 和 [Node.js >= 8.0.0](https://nodejs.org/).
### 安装 Git
::: tip 提示
首先您应该输入 `git`看看系统有没有安装 Git
首先您应该输入 `git`, 看看系统有没有安装 Git:
windows 打开 `cmd` macOS 打开`终端(terminal)`
windows 打开 `cmd`, macOS 打开`终端(terminal)`.
```bash
$ git
@@ -30,19 +30,19 @@ usage: git [--version] [--help] [-C <path>] [-c name=value]
:::
- Windows从 Git 官网直接[下载安装程序](https://git-scm.com/downloads)
- MacOS使用 [Homebrew](https://brew.sh/) `$ brew install git` 或者[下载安装程序](https://git-scm.com/download/mac)
- Linux使用您的包管理器安装例如 `$ sudo apt-get install git`
- Windows: 从 Git 官网直接[下载安装程序](https://git-scm.com/downloads).
- MacOS: 使用 [Homebrew](https://brew.sh/) `$ brew install git` 或者[下载安装程序](https://git-scm.com/download/mac).
- Linux: 使用您的包管理器安装例如 `$ sudo apt-get install git`.
### 安装 Node.JS
#### Windows
Windows 用户请 [下载安装程序](https://nodejs.org/zh-cn/)安装时请勾选`Add to PATH`选项
Windows 用户请 [下载安装程序](https://nodejs.org/zh-cn/). 安装时, 请勾选`Add to PATH`选项.
#### MacOS & Linux
安装 NodeJS 的最佳方式是使用 [nvm](https://github.com/creationix/nvm)
安装 NodeJS 的最佳方式是使用 [nvm](https://github.com/creationix/nvm).
安装 `nvm`
@@ -50,7 +50,7 @@ Windows 用户请 [下载安装程序](https://nodejs.org/zh-cn/)。安装时,
$ curl https://raw.githubusercontent.com/creationix/nvm/master/install.sh | sh
```
安装完成后重启终端并执行下列命令即可安装 `Node.js`
安装完成后, 重启终端并执行下列命令即可安装 `Node.js`.
```bash
$ nvm install node
@@ -58,14 +58,14 @@ $ nvm install node
### 安装 RSSHub
首先是下载 `RSSHub` 的源码请执行下列命令
首先是下载 `RSSHub` 的源码, 请执行下列命令.
```bash
$ git clone https://github.com/DIYgod/RSSHub.git
$ cd RSSHub
```
下载完成后需要安装依赖
下载完成后, 需要安装依赖.
```bash
$ npm install
@@ -73,7 +73,7 @@ $ npm install
::: tip 提示
推荐使用 [Yarn](https://yarn.bootcss.com/) `Yarn``npm` 更快更稳定
推荐使用 [Yarn](https://yarn.bootcss.com/) , `Yarn``npm` 更快更稳定.
使用 `Yarn` 安装依赖时只需要键入
@@ -81,23 +81,23 @@ $ npm install
$ yarn
```
由于众所周知的原因在中国使用 `npm` 下载依赖十分缓慢建议挂一个代理或者考虑使用 [NPM 镜像](https://npm.taobao.org/)
由于众所周知的原因, 在中国使用 `npm` 下载依赖十分缓慢, 建议挂一个代理或者考虑使用 [NPM 镜像](https://npm.taobao.org/).
:::
### 启动
`RSSHub` 文件夹中运行下面的命令就可以启动
`RSSHub` 文件夹中运行下面的命令就可以启动.
```bash
$ npm start
```
在浏览器中打开 [http://127.0.0.1:1200/](http://127.0.0.1:1200/)enjoy it! ✅
在浏览器中打开 [http://127.0.0.1:1200/](http://127.0.0.1:1200/), enjoy it! ✅
### 更新
`RSSHub` 文件夹中运行下面的命令就从 github 仓库拉取最新版本
`RSSHub` 文件夹中运行下面的命令就从 github 仓库拉取最新版本.
```bash
$ git pull
@@ -105,7 +105,7 @@ $ git pull
### 添加配置
可以通过修改 `config.js` 或者设置环境变量来配置 RSSHub
可以通过修改 `config.js` 或者设置环境变量来配置 RSSHub.
**如何设置环境变量**
@@ -113,19 +113,19 @@ Windows 系统在 cmd.exe 中运行 `$ set PORT=1000`
macOS & Linux 运行 `$ PORT=1000`
再运行 `$ npm start` 启动 RSSHub 即可将监听端口设置为 `1000`
再运行 `$ npm start` 启动 RSSHub 即可将监听端口设置为 `1000`.
此处设置的环境变量在关闭终端后就会被清除如果您想保存这些配置可以编写一个简单的 [批处理文件](https://en.wikipedia.org/wiki/Batch_file) 或 [shell](https://en.wikipedia.org/wiki/Shell_script)
此处设置的环境变量在关闭终端后就会被清除, 如果您想保存这些配置可以编写一个简单的 [批处理文件](https://en.wikipedia.org/wiki/Batch_file) 或 [shell](https://en.wikipedia.org/wiki/Shell_script).
更多配置项请看 [应用配置](#应用配置)
### 使用 Redis 数据库缓存
RSSHub 默认会有 5 分钟的缓存默认这个缓存是存放在内存中的RSSHub 还支持 Redis 数据库缓存
RSSHub 默认会有 5 分钟的缓存, 默认这个缓存是存放在内存中的. RSSHub 还支持 Redis 数据库缓存.
::: tip 提示
除非流量特别大或者您需要建立分布式集群否则不需要 Redis 缓存
除非流量特别大或者您需要建立分布式集群, 否则不需要 Redis 缓存.
:::
@@ -133,9 +133,9 @@ RSSHub 默认会有 5 分钟的缓存,默认这个缓存是存放在内存中
**Windows**
安装 Redis on Windows 直接[下载安装程序](https://github.com/MicrosoftArchive/redis/releases)
安装 Redis on Windows 直接[下载安装程序](https://github.com/MicrosoftArchive/redis/releases).
在安装目录中运行下面的命令启动 Redis
在安装目录中运行下面的命令启动 Redis.
```bash
$ redis-server redis.windows.conf
@@ -143,13 +143,13 @@ $ redis-server redis.windows.conf
**MacOS**
使用 [Homebrew](https://brew.sh/) 安装 Redis
使用 [Homebrew](https://brew.sh/) 安装 Redis.
```bash
$ brew install redis
```
再运行下面的命令启动 Redis
再运行下面的命令启动 Redis.
```bash
$ brew services start redis
@@ -157,7 +157,7 @@ $ brew services start redis
**Linux**
使用您的包管理器安装 Redis
使用您的包管理器安装 Redis.
```bash
# apt
@@ -167,15 +167,15 @@ $ sudo apt install redis-server
$ sudo yum install redis
```
然后运行 `$ redis-server` 启动 Redis
然后运行 `$ redis-server` 启动 Redis.
#### 启用 Redis 数据库缓存
修改配置项 `CACHE_TYPE``redis`RSSHub 将使用默认地址 `redis://localhost:6379/` 连接 Redis如果需要修改地址请看 [应用配置](#应用配置)
修改配置项 `CACHE_TYPE``redis`, RSSHub 将使用默认地址 `redis://localhost:6379/` 连接 Redis, 如果需要修改地址请看 [应用配置](#应用配置).
## 部署到 Docker
Docker 属于 Linux 容器的一种封装提供简单易用的容器使用接口它是目前最流行的 Linux 容器解决方案
Docker 属于 Linux 容器的一种封装, 提供简单易用的容器使用接口. 它是目前最流行的 Linux 容器解决方案.
### 安装 Docker
@@ -183,7 +183,7 @@ Docker 属于 Linux 容器的一种封装,提供简单易用的容器使用接
### 部署
运行下面的命令下载 RSSHub 镜像
运行下面的命令下载 RSSHub 镜像.
```bash
$ docker pull diygod/rsshub
@@ -195,9 +195,9 @@ $ docker pull diygod/rsshub
$ docker run -d --name rsshub -p 1200:1200 diygod/rsshub
```
在浏览器中打开 [http://127.0.0.1:1200/](http://127.0.0.1:1200/)enjoy it! ✅
在浏览器中打开 [http://127.0.0.1:1200/](http://127.0.0.1:1200/), enjoy it! ✅
您可以使用下面的命令来关闭 RSSHub
您可以使用下面的命令来关闭 RSSHub.
```bash
$ docker stop rsshub
@@ -205,7 +205,7 @@ $ docker stop rsshub
### 更新
您可以使用下面的命令来更新镜像
您可以使用下面的命令来更新镜像.
```bash
# 先关闭 rsshub
@@ -220,9 +220,9 @@ $ docker pull diygod/rsshub
### 添加配置
配置运行在 docker 中的 RSSHub最便利的方法是使用环境变量
配置运行在 docker 中的 RSSHub, 最便利的方法是使用环境变量.
以设置缓存时间为 1 小时举例只需要在运行时增加参数`-e CACHE_EXPIRE=3600`
以设置缓存时间为 1 小时举例, 只需要在运行时增加参数: `-e CACHE_EXPIRE=3600`
```bash
$ docker run -d --name rsshub -p 1200:1200 -e CACHE_EXPIRE=3600 -e GITHUB_ACCESS_TOKEN=example diygod/rsshub
@@ -232,7 +232,7 @@ $ docker run -d --name rsshub -p 1200:1200 -e CACHE_EXPIRE=3600 -e GITHUB_ACCESS
### 使用 docker-compose 部署
[docker-compose](https://docs.docker.com/compose/overview/) 是用来运行多容器 Docker 应用的小工具可以简化配置部署过程
[docker-compose](https://docs.docker.com/compose/overview/) 是用来运行多容器 Docker 应用的小工具, 可以简化配置部署过程:
1. 创建 volume 持久化 Redis 缓存
@@ -265,21 +265,21 @@ $ docker-compose up
[Before you begin](https://cloud.google.com/appengine/docs/flexible/nodejs/quickstart)
按照这里的引导完成 GCP 账号设置创建 GCP 项目创建 App Engine 项目开通付费功能(必须)安装 git 与 gcloud 工具并完成 gcloud 工具的初始化初始化具体方式[请查看这个链接](https://cloud.google.com/sdk/gcloud/?hl=zh-CN)如果你不打算在本地调试本项目可以不安装 Node.js 环境
按照这里的引导完成 GCP 账号设置, 创建 GCP 项目, 创建 App Engine 项目, 开通付费功能(必须), 安装 git 与 gcloud 工具. 并完成 gcloud 工具的初始化, 初始化具体方式[请查看这个链接](https://cloud.google.com/sdk/gcloud/?hl=zh-CN). 如果你不打算在本地调试本项目, 可以不安装 Node.js 环境.
请注意GAE 免费用量不支持 Flexible Environment 部署至 Flexible Environment 前请确认收费标准
请注意, GAE 免费用量不支持 Flexible Environment , 部署至 Flexible Environment 前请确认收费标准.
Node.JS 的 standard environment 仍在测试中您可能会在部署或使用中遇到某些不可预期的问题
Node.JS 的 standard environment 仍在测试中, 您可能会在部署或使用中遇到某些不可预期的问题.
### 拉取
运行 `git clone https://github.com/DIYgod/RSSHub.git` 拉取本项目的最新版本
运行 `git clone https://github.com/DIYgod/RSSHub.git` 拉取本项目的最新版本.
### app.yaml 配置
#### 部署至 Flexible Environment
在 RSSHub 项目根目录下建立一个 app.yaml 文件内容示例如下
在 RSSHub 项目根目录下建立一个 app.yaml 文件, 内容示例如下:
```yaml
# [START app_yaml]
@@ -292,7 +292,7 @@ env: flex
# https://cloud.google.com/appengine/docs/flexible/nodejs/configuring-your-app-with-app-yaml
manual_scaling:
instances: 1
# 以下是 app engine 资源配置可以自行修改硬盘最低为 10G
# 以下是 app engine 资源配置, 可以自行修改, 硬盘最低为 10G
resources:
cpu: 1
memory_gb: 0.5
@@ -301,7 +301,7 @@ network:
forwarded_ports:
- 80:1200
- 443:1200
# 以下是环境配置示例具体可配置项见本文档配置章节
# 以下是环境配置示例, 具体可配置项见本文档配置章节
env_variables:
CACHE_EXPIRE: '300'
# [END app_yaml]
@@ -309,7 +309,7 @@ env_variables:
#### 部署至 standard environment
在 RSSHub 项目根目录下建立一个 app.yaml 文件内容示例如下
在 RSSHub 项目根目录下建立一个 app.yaml 文件, 内容示例如下:
```yaml
# [START app_yaml]
@@ -319,7 +319,7 @@ network:
forwarded_ports:
- 80:1200
- 443:1200
# 以下是环境配置示例具体可配置项见本文档配置章节
# 以下是环境配置示例, 具体可配置项见本文档配置章节
env_variables:
CACHE_EXPIRE: '300'
# [END app_yaml]
@@ -333,33 +333,33 @@ env_variables:
gcloud app deploy
```
进行项目部署如果您需要变更 app.yaml 文件名称或者变更部署的项目 ID 或者指定版本号等请参考[这个链接](https://cloud.google.com/appengine/docs/flexible/nodejs/testing-and-deploying-your-app)的"Deploying a service" 部分
进行项目部署, 如果您需要变更 app.yaml 文件名称或者变更部署的项目 ID 或者指定版本号等, 请参考[这个链接](https://cloud.google.com/appengine/docs/flexible/nodejs/testing-and-deploying-your-app)的"Deploying a service" 部分.
部署完成后可访问您的 Google App Engine URL 查看部署情况
部署完成后可访问您的 Google App Engine URL 查看部署情况.
## 配置
### 应用配置
可以通过修改 `config.js` 或者设置环境变量来配置 RSSHub
可以通过修改 `config.js` 或者设置环境变量来配置 RSSHub.
::: tip 提示
建议通过设置环境变量来配置 RSSHub避免版本更新时的冲突
建议通过设置环境变量来配置 RSSHub. 避免版本更新时的冲突.
:::
`PORT`: 监听端口默认为 `1200`
`PORT`: 监听端口, 默认为 `1200`
`SOCKET`: 监听 Unix Socket默认为 `null`
`SOCKET`: 监听 Unix Socket, 默认为 `null`
`CACHE_TYPE`: 缓存类型可为 `memory``redis`设为空可以禁止缓存默认为 `memory`
`CACHE_TYPE`: 缓存类型, 可为 `memory``redis`, 设为空可以禁止缓存, 默认为 `memory`
`CACHE_EXPIRE`: 缓存过期时间单位为秒默认 300
`CACHE_EXPIRE`: 缓存过期时间, 单位为秒, 默认 300
`LISTEN_INADDR_ANY`: 是否允许公网连接默认 1
`LISTEN_INADDR_ANY`: 是否允许公网连接, 默认 1
`REDIS_URL`: Redis 连接地址memory 缓存类型时无效)默认为 `redis://localhost:6379/`
`REDIS_URL`: Redis 连接地址memory 缓存类型时无效), 默认为 `redis://localhost:6379/`
`REDIS_PASSWORD`: Redis 连接密码memory 缓存类型时无效)
@@ -399,10 +399,10 @@ gcloud app deploy
### 访问控制
可以通过修改 `middleware/access-control.js` 或者设置环境变量来配置黑名单和白名单
可以通过修改 `middleware/access-control.js` 或者设置环境变量来配置黑名单和白名单.
支持 IP 和路由设置多项时用英文逗号 `,` 隔开同时设置黑名单和白名单时仅白名单有效
支持 IP 和路由, 设置多项时用英文逗号 `,` 隔开. 同时设置黑名单和白名单时仅白名单有效.
- `BLACKLIST`: 黑名单
- `WHITELIST`: 白名单设置白名单后黑名单无效
- `WHITELIST`: 白名单, 设置白名单后黑名单无效

View File

@@ -4,7 +4,7 @@ sidebar: auto
# 参与我们
如果有任何想法或需求可以在 [issue](https://github.com/DIYgod/RSSHub/issues) 中告诉我们同时我们欢迎各种 pull requests
如果有任何想法或需求, 可以在 [issue](https://github.com/DIYgod/RSSHub/issues) 中告诉我们, 同时我们欢迎各种 pull requests
## 提交新的 RSS 内容
@@ -12,28 +12,28 @@ sidebar: auto
1. 在 [/routes/](https://github.com/DIYgod/RSSHub/tree/master/routes) 中的路由对应路径添加获取 RSS 内容的脚本
1. 更新 [README (/README.md) ](https://github.com/DIYgod/RSSHub/blob/master/README.md) 和 [文档 (/docs/README.md) ](https://github.com/DIYgod/RSSHub/blob/master/docs/README.md)可以执行 `npm run docs:dev` 查看文档效果
1. 更新 [README (/README.md) ](https://github.com/DIYgod/RSSHub/blob/master/README.md) 和 [文档 (/docs/README.md) ](https://github.com/DIYgod/RSSHub/blob/master/docs/README.md), 可以执行 `npm run docs:dev` 查看文档效果
1. 执行 `npm run format` 自动处理代码格式后提交代码然后提交 pull request
1. 执行 `npm run format` 自动处理代码格式后, 提交代码, 然后提交 pull request
## 编写脚本
### 从接口获取数据
使用 [axios](https://github.com/axios/axios) 请求接口然后把获取的标题、链接、描述、发布时间等数据赋值给 ctx.state.data每个字段的含义在下面说明可以直接看这个典型的例子[/routes/bilibili/bangumi.js](https://github.com/DIYgod/RSSHub/blob/master/routes/bilibili/bangumi.js)
使用 [axios](https://github.com/axios/axios) 请求接口, 然后把获取的标题、链接、描述、发布时间等数据赋值给 ctx.state.data (每个字段的含义在下面说明) , 可以直接看这个典型的例子: [/routes/bilibili/bangumi.js](https://github.com/DIYgod/RSSHub/blob/master/routes/bilibili/bangumi.js)
### 从 HTML 获取数据
有时候数据是写在 HTML 里的没有接口供我们调用这时候可以使用 [axios](https://github.com/axios/axios) 请求 HTML 数据然后使用 [cheerio](https://github.com/cheeriojs/cheerio) 解析 HTML再把数据赋值给 ctx.state.data可以直接看这个典型的例子[/routes/jianshu/home.js](https://github.com/DIYgod/RSSHub/blob/master/routes/jianshu/home.js)
有时候数据是写在 HTML 里的, 没有接口供我们调用, 这时候可以使用 [axios](https://github.com/axios/axios) 请求 HTML 数据, 然后使用 [cheerio](https://github.com/cheeriojs/cheerio) 解析 HTML, 再把数据赋值给 ctx.state.data, 可以直接看这个典型的例子: [/routes/jianshu/home.js](https://github.com/DIYgod/RSSHub/blob/master/routes/jianshu/home.js)
### 使用缓存
所有路由都有一个缓存缓存时间在 `config.js` 里设定但某些接口返回的内容可能长时间都不会变化这时应该给这些数据设置一个更长的缓存
所有路由都有一个缓存, 缓存时间在 `config.js` 里设定, 但某些接口返回的内容可能长时间都不会变化, 这时应该给这些数据设置一个更长的缓存.
添加缓存:
```js
ctx.cache.set((key: string), (value: string), (time: number)); // time 为缓存时间单位为秒
ctx.cache.set((key: string), (value: string), (time: number)); // time 为缓存时间, 单位为秒
```
获取缓存:
@@ -42,11 +42,11 @@ ctx.cache.set((key: string), (value: string), (time: number)); // time 为缓存
const value = await ctx.cache.get((key: string));
```
可以直接看这个典型的例子[/routes/zhihu/daily.js](https://github.com/DIYgod/RSSHub/blob/master/routes/zhihu/daily.js)这个例子中需要获取每篇文章的详细内容每篇文章都需要单独请求一次请求很多而且每个请求只需要一次这时候可以把结果缓存一天
可以直接看这个典型的例子: [/routes/zhihu/daily.js](https://github.com/DIYgod/RSSHub/blob/master/routes/zhihu/daily.js), 这个例子中需要获取每篇文章的详细内容, 每篇文章都需要单独请求一次, 请求很多而且每个请求只需要一次, 这时候可以把结果缓存一天.
### 数据
获取到的数据赋给 ctx.state.data然后数据会经过 [template.js](https://github.com/DIYgod/RSSHub/blob/master/middleware/template.js) 中间件处理最后传到 [/views/rss.art](https://github.com/DIYgod/RSSHub/blob/master/views/rss.art) 来生成最后的 RSS 结果每个字段的含义如下:
获取到的数据赋给 ctx.state.data, 然后数据会经过 [template.js](https://github.com/DIYgod/RSSHub/blob/master/middleware/template.js) 中间件处理, 最后传到 [/views/rss.art](https://github.com/DIYgod/RSSHub/blob/master/views/rss.art) 来生成最后的 RSS 结果, 每个字段的含义如下:
```js
ctx.state.data = {
@@ -59,31 +59,31 @@ ctx.state.data = {
title: '', // 文章标题
description: '', // 文章内容或描述
pubDate: '', // 文章发布时间
guid: '', // 文章唯一标示必须唯一,可选,默认为文章链接
guid: '', // 文章唯一标示, 必须唯一, 可选, 默认为文章链接
link: '', // 指向文章的链接
},
],
};
```
<details><summary>如果你想制作播客订阅型RSS点这儿</summary><br>
<details><summary>如果你想制作播客订阅型RSS, 点这儿</summary><br>
参考文章:
- [Podcasts Connect 帮助 创建播客 - Apple](https://help.apple.com/itc/podcasts_connect/#/itca5b22233a)
- [Podcasts Connect 帮助 播客最佳做法 - Apple](https://help.apple.com/itc/podcasts_connect/#/itc2b3780e76)
- RSS 格式参考https://codepen.io/jon-walstedt/pen/jsIup
- 播客验证https://podba.se/validate/?url=https://rsshub.app/ximalaya/album/299146/
- RSS 格式参考: https://codepen.io/jon-walstedt/pen/jsIup
- 播客验证: https://podba.se/validate/?url=https://rsshub.app/ximalaya/album/299146/
这些字段能使你的 RSS 被泛用型播客软件订阅
这些字段能使你的 RSS 被泛用型播客软件订阅:
```js
ctx.state.data = {
title: '', // 项目的标题
link: '', // 指向项目的链接
itunes_author: '', // 主播名字必须填充本字段才会被视为播客
itunes_category '',// 播客分类
image: '', // 专辑图片作为播客源时必填
itunes_author: '', // 主播名字, 必须填充本字段才会被视为播客
itunes_category: '', // 播客分类
image: '', // 专辑图片, 作为播客源时必填
description: '', // 描述项目
item: [
// 其中一篇文章或一项内容
@@ -91,11 +91,11 @@ ctx.state.data = {
title: '', // 文章标题
description: '', // 文章内容或描述
pubDate: '', // 文章发布时间
guid: '', // 文章唯一标示必须唯一,可选,默认为文章链接
guid: '', // 文章唯一标示, 必须唯一, 可选, 默认为文章链接
link: '', // 指向文章的链接
itunes_item_image: '', // 图像
enclosure_url: '', // 音频链接
enclosure_length: '', // 时间戳播放长度一般是秒数
enclosure_length: '', // 时间戳 (播放长度) , 一般是秒数
enclosure_type: '', // [.mp3就填'audio/mpeg'] [.m4a就填'audio/m4a'], 或其他类型.
itunes_duration: '', // 由enclosure_length转换为 时:分:秒
},

View File

@@ -4,13 +4,13 @@ sidebar: auto
# 支持 RSSHub
RSSHub 是采用 MIT 许可的开源项目使用完全免费 但是随着项目规模的增长也需要有相应的资金支持才能持续项目的维护与开发
RSSHub 是采用 MIT 许可的开源项目, 使用完全免费. 但是随着项目规模的增长, 也需要有相应的资金支持才能持续项目的维护与开发.
你可以通过下列的方法来赞助 RSSHub 的开发
你可以通过下列的方法来赞助 RSSHub 的开发.
## 一次性赞助
我们通过以下方式接受赞助
我们通过以下方式接受赞助 :
- [微信支付](https://i.imgur.com/aq6PtWa.png)
- [支付宝](https://i.imgur.com/wv1Pj2k.png)
@@ -19,7 +19,7 @@ RSSHub 是采用 MIT 许可的开源项目,使用完全免费。 但是随着
## 周期性赞助
周期性赞助可以获得额外的回报比如更快的 GitHub 响应或者你的名字会出现在 RSSHub 的 GitHub 仓库和现在我们的官网中
周期性赞助可以获得额外的回报, 比如更快的 GitHub 响应或者你的名字会出现在 RSSHub 的 GitHub 仓库和现在我们的官网中.
- 通过 [Patreon](https://www.patreon.com/DIYgod) 赞助成为 backer 或 sponsor
- 给我们发邮件联系赞助事宜: i#html.love