应用归属
加一个请求头,你的应用就会出现在 javinfo 公开榜单上,附带请求数、用户数和数据源分布。免费、可选、一分钟搞定。
在 API 调用里加上 referer 请求头,javinfo 就会为你的应用维护一个公开页面:累计请求数、有多少账号 通过它调用、哪个数据源命中最多。你的应用会出现在 javinfo.dev 的 榜单上。
完全免费。带归属的调用和不带归属的调用计费完全一样,这些请求头也不影响你的速率限制。不加就什么都不 会发生:没有页面,没有排名,没有记录。
请求头
| 请求头 | 必填 | 作用 |
|---|---|---|
HTTP-Referer | 是 | 你的应用 URL。它就是应用的身份。没有 URL,就没有应用页面。 |
Referer | – | 浏览器会自动带上。HTTP-Referer 缺失时作为兜底。 |
x-javinfo-title | 否 | 显示名称。默认取 URL 的主机名。 |
x-javinfo-categories | 否 | 逗号分隔的标签,最多 10 个。会自动转成小写。 |
HTTP-Referer 沿用 OpenRouter 的约定,原因是普通的 Referer 在浏览器里属于
禁止修改的请求头,
JavaScript 无法设置。在服务端两者都能设。在浏览器里 Referer 会自动带上,其余的自己加。
curl "https://api.javinfo.dev/movie?q=SSIS-001" \
-H "x-javinfo-key: jvi_your_key_here" \
-H "HTTP-Referer: https://myapp.example.com" \
-H "x-javinfo-title: My App" \
-H "x-javinfo-categories: search-ui, metadata"const res = await fetch('https://api.javinfo.dev/query?q=SSIS', {
headers: {
'x-javinfo-key': 'jvi_your_key_here',
'HTTP-Referer': 'https://myapp.example.com',
'x-javinfo-title': 'My App',
},
});在 HTTP 客户端的默认请求头里设一次,之后就不用再管了。
你发送的 URL 会变成 javinfo.dev 上的公开链接。填你希望别人点开的页面,不要填内部后台或测试环境。
哪些端点会计入
/movie、/query 和 /random。这三个端点每一次带有效 referer 的成功调用,都会给你的应用累加一次
请求。/stats 和 /health 不计入归属。
记录动作在后台队列里完成,那时响应已经发出,所以不增加任何延迟,Redis 抖动也绝不会让一个本来成功的 请求失败。
会存下什么
URL 会被归一化为「源 + 路径」。查询字符串和片段会被丢弃,根路径会收敛成源本身:
https://myapp.example.com/?ref=hn → https://myapp.example.com
https://myapp.example.com/search?q=x → https://myapp.example.com/search不同路径算不同应用。选定一个规范 URL 并一直用它,否则你的流量会被拆成榜单上的两行。
标题和分类只在你发送时才更新。不发就沿用上次的值。
什么会被忽略
以下情况归属都会被静默丢弃,API 调用本身照常成功。
- 既没有
HTTP-Referer也没有Referer。 - referer 不是合法 URL。
- 协议不是
http或https。不接受file://,也不接受自定义协议。 localhost、127.0.0.1、::1。本地开发永远不会污染榜单。javinfo.dev和app.javinfo.dev。我们不给自己排名。- 超过 500 个字符的 URL。
- 只有标题没有 URL。单独的
x-javinfo-title不会创建任何东西。
超过 10 个的分类会被截断。分类没有固定清单,用什么描述你的应用都行:search-ui、discord-bot、
cli、scraper、mobile-app。
你的应用页面
第一次带归属的请求会创建条目并立即生效。此后榜单按累计请求数排序展示你的应用,点进
javinfo.dev/apps/{id} 可以看到:
- 累计请求数。
- 通过你的 URL 调用过的 javinfo 账号去重数。按账号计,不按调用计,所以这是真实的用户数,而不是 披着用户数外衣的访问数。
- 数据源分布:你的查询分别由 FANZA、DMM、javdb、missav、javdatabase 或 javlibrary 回答了多少次。 这个顺序的含义见数据源。
同样的数据不用密钥也能读:
curl "https://api.javinfo.dev/v1/apps/rankings?limit=20"
curl "https://api.javinfo.dev/v1/apps/{id}"榜单只能靠调用量挣来,买不到。javinfo.dev 上另有付费位,并会明确标注;付费买不到这张表里的名次。
移除你的应用
不再发送请求头,你的条目就停止增长,但历史数字会保留。想彻底删掉页面?用与该 URL 同域名的邮箱发信到 [email protected],我们会删除它。