feat(backend): 增强名片高保真种子数据与 SEO 微官网服务端渲染能力
这个提交包含在:
@@ -12,6 +12,7 @@ import {
|
||||
GeoHeaderMap,
|
||||
resolveSuggestedLocale,
|
||||
} from '../../../../comm/i18n/geo';
|
||||
import { MOCK_CARDS_DATA } from '../../mock/seed-cards';
|
||||
|
||||
export interface PortalRequestContext {
|
||||
headers?: GeoHeaderMap;
|
||||
@@ -89,6 +90,23 @@ export class OpenCardPortalController extends BaseController {
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取全部高保真名片预览清单 (供前端预览体验与免登录快速切换)
|
||||
* 接口地址: GET /open/card/portal/mock-cards
|
||||
*/
|
||||
@CoolTag(TagTypes.IGNORE_TOKEN)
|
||||
@Get('/mock-cards', { summary: '获取高保真名片预览清单' })
|
||||
async mockCards() {
|
||||
return this.ok(
|
||||
MOCK_CARDS_DATA.map(item => ({
|
||||
...item.card,
|
||||
bentoBlocksCount: item.bentoBlocks.length,
|
||||
casesCount: item.cases.length,
|
||||
articlesCount: item.articles.length,
|
||||
}))
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
* 导出国际商务日程预约排期 ICS 日历订阅文件
|
||||
* 接口地址: GET /open/card/portal/meeting-ics
|
||||
@@ -260,7 +278,8 @@ export class OpenCardPortalController extends BaseController {
|
||||
!slugOrId ||
|
||||
slugOrId === 'detail' ||
|
||||
slugOrId === 'meeting-ics' ||
|
||||
slugOrId === 'preview-html'
|
||||
slugOrId === 'preview-html' ||
|
||||
slugOrId === 'mock-cards'
|
||||
) {
|
||||
return this.fail('缺少名片标识参数~', 1001);
|
||||
}
|
||||
|
||||
在新工单中引用
屏蔽一个用户