Skip to content

Commit

Permalink
✨ feat: 新增 极客公园
Browse files Browse the repository at this point in the history
  • Loading branch information
imsyy committed Dec 9, 2024
1 parent bd507f9 commit c9ee406
Show file tree
Hide file tree
Showing 2 changed files with 56 additions and 0 deletions.
14 changes: 14 additions & 0 deletions src/router.types.d.ts
Original file line number Diff line number Diff line change
Expand Up @@ -363,4 +363,18 @@ export type RouterType = {
created_at: number;
type: number;
};
geekpark: {
post: {
id: number;
nickname: string;
title: string;
abstract: string;
cover_url: string;
views: number;
published_timestamp: number;
authors: {
nickname: string;
}[];
};
};
};
42 changes: 42 additions & 0 deletions src/routes/geekpark.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
import type { RouterData } from "../types.js";
import type { RouterType } from "../router.types.js";
import { get } from "../utils/getData.js";
import { getTime } from "../utils/getTime.js";

export const handleRoute = async (_: undefined, noCache: boolean) => {
const listData = await getList(noCache);
const routeData: RouterData = {
name: "geekpark",
title: "极客公园",
type: "热门文章",
description: "极客公园聚焦互联网领域,跟踪新鲜的科技新闻动态,关注极具创新精神的科技产品。",
link: "https://www.geekpark.net/",
total: listData.data?.length || 0,
...listData,
};
return routeData;
};

const getList = async (noCache: boolean) => {
const url = `https://mainssl.geekpark.net/api/v2`;
const result = await get({ url, noCache });
const list = result.data?.homepage_posts;
return {
...result,
data: list.map((v: RouterType["geekpark"]) => {
const post = v.post;
return {
id: post.id,

title: post.title,
desc: post.abstract,
cover: post.cover_url,
author: post?.authors?.[0]?.nickname,
hot: post.views,
timestamp: getTime(post.published_timestamp),
url: `https://www.geekpark.net/news/${post.id}`,
mobileUrl: `https://www.geekpark.net/news/${post.id}`,
};
}),
};
};

0 comments on commit c9ee406

Please sign in to comment.