fix(publish): require submit marker before platform write
Desktop Client Build / Resolve Build Metadata (push) Successful in 20s
Frontend CI / Frontend (push) Successful in 2m57s
Desktop Client Build / Build Desktop Client (push) Successful in 25m11s
Desktop Client Build / Publish Client Artifacts to NAS (push) Successful in 34s
Backend CI / Backend (push) Successful in 50m56s
Desktop Client Build / Resolve Build Metadata (push) Successful in 20s
Frontend CI / Frontend (push) Successful in 2m57s
Desktop Client Build / Build Desktop Client (push) Successful in 25m11s
Desktop Client Build / Publish Client Artifacts to NAS (push) Successful in 34s
Backend CI / Backend (push) Successful in 50m56s
This commit is contained in:
@@ -61,7 +61,9 @@ export interface ToutiaoPublishTransport {
|
||||
html: string,
|
||||
uploader: (sourceUrl: string) => Promise<string | null>,
|
||||
): Promise<{ html: string; uploaded?: Map<string, string> }>
|
||||
reportProgress?(stage: 'media_info' | 'upload_content_images' | 'upload_cover' | 'submit'): void
|
||||
reportProgress?(
|
||||
stage: 'media_info' | 'upload_content_images' | 'upload_cover' | 'submit',
|
||||
): void | Promise<void>
|
||||
}
|
||||
|
||||
export type ToutiaoPublishResult =
|
||||
@@ -236,7 +238,7 @@ export async function publishToutiaoArticle(
|
||||
input: ToutiaoPublishArticleInput,
|
||||
transport: ToutiaoPublishTransport,
|
||||
): Promise<ToutiaoPublishResult> {
|
||||
transport.reportProgress?.('media_info')
|
||||
await transport.reportProgress?.('media_info')
|
||||
const media = await fetchToutiaoMediaSnapshot(transport.fetchJson)
|
||||
if (!media?.platformUid || !media.screenName) {
|
||||
return {
|
||||
@@ -257,7 +259,7 @@ export async function publishToutiaoArticle(
|
||||
}
|
||||
}
|
||||
|
||||
transport.reportProgress?.('upload_content_images')
|
||||
await transport.reportProgress?.('upload_content_images')
|
||||
const processed = await transport.uploadHtmlImages(normalizedHtml, async (sourceUrl) =>
|
||||
uploadContentImage(transport, sourceUrl),
|
||||
)
|
||||
@@ -275,7 +277,7 @@ export async function publishToutiaoArticle(
|
||||
}
|
||||
}
|
||||
|
||||
transport.reportProgress?.('upload_cover')
|
||||
await transport.reportProgress?.('upload_cover')
|
||||
const cover = input.coverAssetUrl?.trim()
|
||||
? await uploadCover(transport, input.coverAssetUrl.trim(), input.publishType)
|
||||
: null
|
||||
@@ -306,7 +308,7 @@ export async function publishToutiaoArticle(
|
||||
}),
|
||||
})
|
||||
|
||||
transport.reportProgress?.('submit')
|
||||
await transport.reportProgress?.('submit')
|
||||
const response: ToutiaoPublishResponse = await transport
|
||||
.fetchJson<ToutiaoPublishResponse>(
|
||||
'https://mp.toutiao.com/mp/agw/article/publish?source=mp&type=article&aid=1231',
|
||||
|
||||
Reference in New Issue
Block a user