-
Notifications
You must be signed in to change notification settings - Fork 4
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Feature Request]: OGPの取得を手動化したい #31
Comments
@nkte8 今すぐ対応できそうな例としては、単純に
ゆくゆくはOGP取得が1投稿につき2重になっている問題の解決と合わせて、
|
@ZEKE320 仰っている通り、今上がっている報告事例の対応もこのIssueで解決できますね。 |
@nkte8 [以下、問題に関する補足情報です] |
ですよね...リンクカードの生成するかって以下のようになっていて、 if (noGenerate || noImagesAttached) { <----------ここで弾かれてるはず
record = await attachExternalToRecord({
apiUrl: siteurl,
base: record,
session: sessionNecessary,
externalUrl: new URL(linkcardUrl),
handleProcessing: setMsgInfo
})
} 他のOGPの話もあるから、このIssueでの改善で全部まとめて解決しちゃうのがいい、はねこのも同感です。 |
じゃじゃっと実装中 // メディアのプレビューに関するStateコンストラクタ
const [mediaDataList, setMediaDataList] = useState<Array<MediaData>>([]) こんな感じの情報を持っている型です。 import { ogpMetaData } from "@/lib/types"
export type MediaData = LinkCard | Image
type LinkCard = {
type: "linkcard",
blob: Blob | null,
meta: ogpMetaData & {
url: string
}
}
type Image = {
type: "image",
alt: string,
blob: Blob | null,
} コンポーネントの作業範囲も明確にするため、PostFormではなくリンクカードを手動取得するボタンの方にメソッドを仕込んでいます。( export const Component = ({
postText,
setMediaDataList,
...
const handlePost = async () => {
const richTextLinkParser = new richTextFacetParser("link")
const parseResult = richTextLinkParser.getFacet(postText)
if (parseResult.length < 1) {
return
}
setProcessing(true)
setMsgInfo({
isError: false,
msg: `リンクカードを取得中...`
})
...
return (
<ProcButton
handler={handlePost}
isProcessing={isProcessing}
context="リンクカードを取得"
showAnimation={showAnimation}
className={["mx-1"].join(" ")}
disabled={disabled} />
) 作業範囲の明確化について、本当は |
...と思ったけど、OGP手動取得の時点でこれまで使ってた |
現在の状態については https://github.com/nkte8/skyshare/tree/feature/issue_31 にて確認ができます。 ...ので、さっさと作り上げます。本issue解決によりOGP画像はStateとして保存されるため現在のような再取得も必要なく、 #19 も同時に解消される見込みです。 |
v1.4.0 にて対応完了 |
Request Details
リンクカードが取得できない、想定と違うポストになってしまう、という問題の本質として、そもそもOGPカードに対応しているしていないかの判断がポスト前にできないことにあると思う。
Blueskyアプリや、他サードパーティクライアントと同様にリンクカードの取得自体が可能かどうかをポスト前に判断できれば、投稿内容が想定と不一致であるという部分でのミスマッチを抑えることができるのではないかと考える。
Feature Scope
Usability increase, user satisfication (ユーザビリティ向上させ、利用者を満足させる)
Feature Add infomation
No response
The text was updated successfully, but these errors were encountered: