Skip to content

Commit

Permalink
feat: 微信公众号支持上传图片
Browse files Browse the repository at this point in the history
  • Loading branch information
terwer committed Sep 5, 2023
1 parent 690bf9d commit 2384e72
Show file tree
Hide file tree
Showing 2 changed files with 34 additions and 1 deletion.
3 changes: 3 additions & 0 deletions src/adaptors/api/gitlab-hexo/gitlabHexoApiAdaptor.ts
Original file line number Diff line number Diff line change
Expand Up @@ -54,8 +54,10 @@ class GitlabHexoApiAdaptor extends CommonGitlabApiAdaptor {
this.logger.info("准备处理 Gitlabhexo 正文")
this.logger.debug("md =>", { md: md })
let updatedMd = md

// MD暂时无法处理标记,先搁置
// 处理MD

updatedPost.markdown = updatedMd
this.logger.info("Gitlabhexo 正文处理完毕")
this.logger.debug("updatedMd =>", { updatedMd: updatedMd })
Expand All @@ -66,6 +68,7 @@ class GitlabHexoApiAdaptor extends CommonGitlabApiAdaptor {
} else {
post.description = post.html
}

return updatedPost
}
}
Expand Down
32 changes: 31 additions & 1 deletion src/adaptors/web/wechat/wechatWebAdaptor.ts
Original file line number Diff line number Diff line change
Expand Up @@ -26,9 +26,10 @@
import { BaseWebApi } from "~/src/adaptors/web/base/baseWebApi.ts"
import * as cheerio from "cheerio"
import { HtmlUtil, JsonUtil, ObjectUtil, StrUtil } from "zhi-common"
import { Post, UserBlog } from "zhi-blog-api"
import { BlogConfig, PageTypeEnum, Post, UserBlog } from "zhi-blog-api"
import { toRaw } from "vue"
import { isDev } from "~/src/utils/constants.ts"
import _ from "lodash"

/**
* 微信公众号网页授权适配器
Expand Down Expand Up @@ -480,6 +481,35 @@ class WechatWebAdaptor extends BaseWebApi {

return {}
}

public override async preEditPost(post: Post, id?: string, publishCfg?: any): Promise<Post> {
// 公共的属性预处理
const doc = await super.preEditPost(post, id, publishCfg)

// 微信公众号自定义的处理
const cfg: BlogConfig = publishCfg?.cfg
const updatedPost = _.cloneDeep(doc) as Post
this.logger.info("准备处理微信公众号正文")

let updatedHtml = post.html

// 修复图片格式
// <img data-s="300,640" class="rich_pages wxw-img js_insertlocalimg"
// data-src="https://mmbiz.qpic.cn/mmbiz_jpg/oZAZzwd6M3bxCPu3jBlcHa0et8fopdqFF6sywBwb4Uric0f5L67l97DrcPoWhfPNMTicMEPz3ze7ovG054yhUIpA/0?wx_fmt=jpeg"
// style="" data-ratio="1" data-w="460" data-type="jpeg">

updatedPost.markdown = updatedHtml
this.logger.info("微信公众号正文处理完毕")

// 发布格式
if (cfg?.pageType == PageTypeEnum.Markdown) {
post.description = post.markdown
} else {
post.description = post.html
}

return updatedPost
}
}

export { WechatWebAdaptor }

0 comments on commit 2384e72

Please sign in to comment.