Skip to content

記事本文内の相対リンクを元記事URL基準で絶対URLに変換 (Closes #59)#81

Merged
cross-ts merged 2 commits into
mainfrom
claude/gracious-perlman-c6f9f1
Jun 28, 2026
Merged

記事本文内の相対リンクを元記事URL基準で絶対URLに変換 (Closes #59)#81
cross-ts merged 2 commits into
mainfrom
claude/gracious-perlman-c6f9f1

Conversation

@cross-ts

Copy link
Copy Markdown
Owner

Summary

  • 記事本文内の相対リンク(/blog/ 等)がローカルアプリのURLとして解釈される問題を修正
  • resolveContentLinks ユーティリティを追加し、article.url を基準に <a href> / <img src> の相対URLを絶対URLへ変換
  • 本文内の全リンクに target="_blank" rel="noopener noreferrer" を付与し外部ブラウザで開くように統一

Test plan

  • resolveContentLinks のユニットテスト(11ケース)が全て通過
  • 既存テスト含む全268テストが通過
  • Go Blogフィードを登録し、記事内の相対リンクが https://go.dev/... に解決されることを確認
  • 絶対URLリンクが変換されずそのまま動作することを確認

🤖 Generated with Claude Code

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Copilot AI review requested due to automatic review settings June 28, 2026 16:18

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

記事本文中の相対リンクがローカルアプリの URL として解釈されてしまう問題を、article.url を基準に本文 HTML 内の <a href> / <img src> を絶対 URL 化することで解消し、あわせてリンクのオープン挙動を外部ブラウザに統一する変更です(フロントエンドの表示品質改善)。

Changes:

  • resolveContentLinks ユーティリティを追加し、本文 HTML 内のリンク/画像 URL を article.url 基準で解決
  • 本文内 <a>target="_blank"rel="noopener noreferrer" を付与する処理を追加
  • resolveContentLinks のユニットテストを追加し、ArticleView に適用

Reviewed changes

Copilot reviewed 3 out of 3 changed files in this pull request and generated 3 comments.

File Description
web/src/utils/resolveLinks.ts 本文 HTML をパースし、href/src の URL 解決と <a> 属性付与を実施
web/src/utils/tests/resolveLinks.test.ts resolveContentLinks のユニットテスト追加
web/src/components/ArticleView.tsx 表示時に resolveContentLinks を通してから DOMPurify でサニタイズ

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread web/src/utils/resolveLinks.ts
Comment thread web/src/utils/__tests__/resolveLinks.test.ts
Comment thread web/src/components/ArticleView.tsx Outdated
@cross-ts cross-ts merged commit 22eed2a into main Jun 28, 2026
@cross-ts cross-ts deleted the claude/gracious-perlman-c6f9f1 branch June 28, 2026 17:01
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants