legacy-knowledge-base
公開されました Jun. 30, 2025

ブログ画像IDの取得がヘッドレスAPIで異なる

written-by

Pooja Bhambani

How To articles are not official guidelines or officially supported documentation. They are community-contributed content and may not always reflect the latest updates to Liferay DXP. We welcome your feedback to improve How To articles!

While we make every effort to ensure this Knowledge Base is accurate, it may not always reflect the most recent updates or official guidelines.We appreciate your understanding and encourage you to reach out with any feedback or concerns.

legacy-article

learn-legacy-article-disclaimer-text

問題

  • 再現の手順
    1. Liferay DXP 7.4 を起動します。
    2. コンテンツ & データ > ブログ に移動する。
    3. ブログをひとつ作る。
    4. localhost:8080/o/apiに移動する。
    5. BlogPostingImageでこのリクエストを実行する:
    Get /v1.0/sites/{site-id}/blog-postings-images

    このリクエストを実行すると、次のようなレスポンス・ボディを受け取る:id "に注意。

    { 
    "contentUrl": "/documents/34933/34935/Import.png/5a907d7d-df27-c701-5b08-8460e3daecdd?version=1.0&t=1688469903434",
    "encodingFormat": "image/png",
    "fileExtension": "png",
    "id": 34936,
    "sizeInBytes": 42586,
    "title": "Import.png"
    }
    6 では、このリクエストを実行してください:
    Get /v1.0/sites/{site-id}/blog-postings under headless-delivery/v1.0

    このリクエストを実行すると、次のようなレスポンス・ボディを受け取る:image-id "に注意してください。

    "image": { 
    "caption": "<p>Caption</p>",
    "contentUrl": "/documents/d/guest/import-png-1",
    "imageId": 34950
    },
    実際の結果 ステップ5とステップ6では、ブログ画像IDの取得方法が異なります。
    期待される結果 以下のAPIからブログコンテンツを取得することで、ブログ画像idが同じになること:
    Get /v1.0/sites/{site-id}/blog-posting-images.
    get /v1.0/sites/{site-id}/blog-postings under headless-delivery/v1.0.

Environment

  • Liferay DXP 7.4

解決策

  • ヘッドレスAPIによる'id'と'imageid'の取得は、製品の期待される動作です。 その理由は、以下のAPIでは異なる要素を取得しているからだ:
    Get /v1.0/sites/{site-id}/blog-posting-images
    Get /v1.0/sites/{site-id}/blog-postings
  • (Get /v1.0/sites/{site-id}/blog-posting-images) リクエストについて:
    • blog-posting-images リクエストは、ブログのリポジトリにアップロードされた画像のリストを表示します。つまり、BLOGSリポジトリに送信されたすべてのオリジナル画像を意味します。
    • この場合、 id は、ブログ・ポートレットの画像タブで見ることができるファイルのIDです。
    • また、 dlfilentry テーブルの filentryid カラムをチェックすることでも確認できる。
  • (Get /v1.0/sites/{site-id}/blog-postings) リクエストについて:
    • blog-posting はブログ・エントリーのリストを表示する。
    • この場合、 画像ID は、各ブログエントリーのカバー画像として使用される画像のIDです。 これは、BLOGSレポジトリに更新されたオリジナル画像のトリミングコピーである。
    • また、 blogsentryテーブルの coverimagefileentryid カラムをチェックすることでも確認できる。
did-this-article-resolve-your-issue

legacy-knowledge-base