DRM-X 6.0 鳩とオリーブの枝のロゴDRM-X 6.0ドキュメント
◎ 日本語

Node.js + ExpressのビデオDRMの統合

Express SDKをインストールし、既存のログインを接続し、承認されたContent IDを1つのリクエストタイムコールバックから返します。

Markdown を表示動作サンプル更新日:2026-09-25
このプラットフォームキットをダウンロード

プレビュー版 SDK、アプリのサンプル、ソースが含まれます。展開後のフォルダー構造を維持してください。

全プラットフォームと完全キット · 統合手順を理解する

カスタマイズする3つの場所#

  1. 設定examples/sdk/node-express/server.mjs

    publicOrigin、instanceIdおよび環境の資格情報を設定します。

  2. ユーザーを識別

    既存のセッション/ログインミドルウェア

    req.user を設定し、identity: req => req.user?.id を渡します。

  3. 認可authorize(userId, videoId)

    この動画を調べて、現在のパーミッションを確認します。マッピングやnullを返します。

1. インストールして動画を1本再生#

cd examples/sdk/node-express
npm install
# Set DRMX_SITE_ID, DRMX_SITE_KEY and DRMX_ACCESS_KEY on the server.
# For localhost only, set DRMX_LOCAL_DEMO=1.
node server.mjs

Node.js 24+およびExpress 5を使用して下さい。 server.mjs の authorize の中の your-published-content-id を取り替えて下さい。 http://127.0.0.1:8109/drmx/videos/1 を開きます。 この例では、バンドルされた@drmx/serverと@drmx/expressアーカイブをインストールします。

2. 実際の権限チェックを接続#

ログインミドルウェアの後にルーターを接続します。デモコールバックを置き換えてください。customerCatalog はお客様のデータベースまたはサービスを表します。

identity: req => req.user?.id,
authorize: async (userId, videoId) => {
  const video = await customerCatalog.findAuthorizedVideo(userId, videoId);
  if (!video) return null;
  return { enabled: true, contentId: video.drmxContentId,
           contentType: 'vod', title: video.title,
           policy: 'multi-tier-standard' };
}

クエリ内で購入または会員資格、コンテンツの利用可否、権限の期限切れと取り消しを確認します。コールバックはページと各新規セッションで実行されます。正確な公開 HTTPS オリジンを設定し、ローカルデモ用ミドルウェアを無効化します。

3. プレーヤーを開く、または埋め込む#

ルーターはGET /drmx/videos/:idおよびPOST /drmx/videos/:id/sessionを提供します。 ページを最初に使用して下さい。 独自のページを作成するには、スクリプトタグとWeb Componentを再利用し、認証されたContent IDとセッションURLの同じビデオIDを渡します。

本番公開前の確認#

  • 許可されたユーザーとしてサインインし、サポートされているブラウザーで公開された動画を再生します。
  • 未ログインと未払いのユーザーを試し、権限の取り消しと期限切れもテストします。新規セッション要求は拒否される必要があります。
  • ブラウザContent IDまたはWebサイトのビデオIDを変更します。 サーバは新しい選択を点検しなければなりません。
  • 公開 HTTPS オリジンを正確に設定し、フレームワークのセッション/CSRF 保護を維持して、デモ用のユーザー識別コードを無効にしてください。

既存のセッションと DRM ライセンスには独自の有効期間があります。新しいリクエストでは権限の変更を確認しますが、発行済みのライセンスを消去するわけではありません。