Strapi
ONLYOFFICEとStrapiの統合について
StrapiはAPIを構築するために使用されるオープンソースのコンテンツ管理システムです。ONLYOFFICEは、ONLYOFFICE DocsをStrapiと統合し、Strapiメディアライブラリ内でオフィス文書を編集するための公式コネクターを提供しています。ONLYOFFICE統合プラグインは、npmライブラリまたはGitHubページから入手できます。このコネクターはApache-2.0ライセンスの下で配布されています。
Strapi用ONLYOFFICEコネクターの動作について詳しくは、APIドキュメントページをご覧ください。
主な機能
- テキスト文書、スプレッドシート、プレゼンテーションの編集と閲覧。
- リアルタイムでの文書の共同編集:2つの共同編集モード(高速と厳格)、変更履歴モード、コメント、内蔵チャット。
- JWTサポートにより通信を保護し、適切な権限を持つユーザー以外は文書にアクセスできないようにします。
サポートされている形式
- 閲覧と編集:DOCX、XLSX、PPTX
- 閲覧のみ:DOC、DOCX、DOCM、DOT、DOTX、DOTM、ODT、FODT、OTT、RTF、TXT、HTML、HTM、MHT、XML、PDF、DJVU、FB2、EPUB、XPS、XLS、XLSX、XLSM、XLT、XLTX、XLTM、ODS、FODS、OTS、CSV、PPS、PPSX、PPSM、PPT、PPTX、PPTM、POT、POTX、POTM、ODP、FODP、OTP
バージョン2.0.1の新機能
変更
- エンジンの依存関係を更新
完全な変更履歴はこちらでご覧いただけます。
ONLYOFFICE DocsとStrapiの接続
要件
-
ONLYOFFICE Document Server v7.1以降(サーバー版またはクラウド版)
Strapiとすべてのエンドクライアントの両方から名前解決および接続可能なONLYOFFICE Docsのインスタンスが必要です。Strapiに直接POSTできる必要があります。
注記ONLYOFFICE Docsのインストールについて詳しくは、公式のドキュメントページをご参照ください。
-
Strapi v4.2.0以降
Strapi用ONLYOFFICE統合プラグインのインストール
-
エディターを含むフレームの挿入とapi.jsの読み込みを許可するために、
strapi/config/middlewares.jsファイル内のstrapi::security行を以下の設定に置き換えます:{name: "strapi::security",config: {contentSecurityPolicy: {useDefaults: true,directives: {"script-src": ["'self'", "https:", "http:"],"frame-src": ["'self'", "https:", "http:"],},},}},このような設定が既に存在する場合は、
directivesを追加するだけです。 -
Strapiプロジェクトにプラグインをインストールします:
npm install onlyoffice-strapi --save -
ONLYOFFICEプラグインを管理UIに含めるために、Strapiを再ビルドして再起動します。次を実行します:
# using yarnyarn buildyarn develop# using npmnpm run buildnpm run developこれでStrapi用ONLYOFFICE統合プラグインがインストールされ、設定の準備が整いました。プラグインはプラグインセクションの左パネルからONLYOFFICEという名前でアクセスできます。

Strapi用ONLYOFFICE統合プラグインの設定
StrapiでONLYOFFICE統合プラグインを設定するには:
-
左パネルの設定セクションを開きます。
-
グローバル設定セクションでONLYOFFICEメニュー項目をクリックします。
-
ONLYOFFICE設定ページで、ドキュメントサーバーアドレス、つまりインストールされたONLYOFFICE DocsのURLを入力します。
注記ONLYOFFICE DocsのアドレスはStrapiからアクセス可能である必要があり、StrapiのアドレスもONLYOFFICE Docsからアクセス可能である必要があります。
仕組み
ユーザーとドキュメントのやり取りは、クライアント側とサーバー側の両方で行われます。
現在のドキュメント全体で使用される主な概念は以下の通りです。
クライアント側には以下が含まれます:
- ドキュメントマネージャー - ユーザーのブラウザに表示されるドキュメントのリストで、ユーザーは必要なドキュメントを選択し、いくつかの操作を行うことができます(付与された権限に応じて、ユーザーはドキュメントを開いて閲覧または編集したり、他のユーザーと共有したりできます)。
- ドキュメントエディター - ドキュメントの閲覧と編集のインターフェースで、最もよく知られたドキュメント編集機能が利用可能で、ユーザーとドキュメント編集サービスの間の媒体として使用されます。
サーバー側には以下が含まれます:
- ドキュメントストレージサービス - 適切なアクセス権を持つユーザーが利用可能なすべてのドキュメントを保存するサーバーサービスです。ユーザーがブラウザで見るドキュメントマネージャーに、ドキュメントIDとそれらのドキュメントへのリンクを提供します。
- ドキュメント編集サービス - ユーザーが適切な権限を持っている場合に、ドキュメントの閲覧と編集を行うことができるサーバーサービスです。ドキュメントエディターインターフェースは、ドキュメント編集サービスのすべての機能にアクセスするために使用されます。
- ドキュメントコマンドサービス - ドキュメント編集サービスで追加のコマンドを実行することを可能にするサーバーサービスです。
- ドキュメント変換サービス - ドキュメントファイルを適切なOffice Open XML形式(テキストドキュメントの場合はdocx、スプレッドシートの場合はxlsx、プレゼンテーションの場合はpptx)に変換して、編集やダウンロードを可能にするサーバーサービスです。
- ドキュメントビルダーサービス - 実際にドキュメント処理エディターを実行することなく、簡単にドキュメントを構築することを可能にするサーバーサービスです。
ONLYOFFICE Document Serverには、ドキュメントエディター、ドキュメント編集サービス、ドキュメントコマンドサービス、ドキュメント変換サービス、ドキュメントビルダーサービスが含まれることにご注意ください。ドキュメントマネージャーとドキュメントストレージサービスは、Community Serverに含まれているか、自社サーバーでONLYOFFICE Document Serverを使用するソフトウェアインテグレーターが実装する必要があります。
ONLYOFFICEとStrapiの統合でJWTを有効にする
JWTまたはJSON Web Tokenは、クライアントの正当性を検証するためにHTTPリクエスト内でクライアントからサーバーに送信される文字列です。JWTはクライアント側にのみ保存されるため、当事者間の送信は保護され、デジタル署名されます。
トークンはJWT(JSON Web Tokens)標準を使用して生成されます。トークンはサーバーのキーで署名されているため、クライアントはトークンが正当であることを確認できます。
ONLYOFFICE Docsはトークンを検証します。ペイロードからのデータは有効と見なされ、メインパラメータからの対応するデータの代わりに使用されます。トークンが無効な場合、コマンドは実行されません。詳細については、APIセキュリティガイドをお読みください。
JWTでドキュメントを保護するには、
-
左パネルの設定セクションを開きます。
-
グローバル設定セクションでONLYOFFICEメニュー項目をクリックします。
-
ONLYOFFICE設定ページで、ドキュメントサーバーJWTシークレットキーフィールドにシークレットキーを入力します。詳細はこちらをご覧ください。

これでONLYOFFICE統合プラグインが設定され、使用を開始できます。
Strapi内でONLYOFFICE Docsを使い始める
ユーザーがStrapiのオフィス文書をONLYOFFICE Docsエディターで編集し、変更をStrapiに保存できるようにするために、ファイルをアップロードし、対応するアクセス権を設定します。
Strapiへのファイルのアップロード
-
左パネルのプラグインセクションでメディアライブラリページを開きます。
-
右上隅の新しいアセットを追加ボタンをクリックします。

-
新しいアセットを追加ウィンドウが開きます。上部パネルの対応するタブをクリックして、ファイルをコンピューターからアップロードするかURLからアップロードするかを選択します。

Strapiでのファイルの閲覧、編集、管理
Strapiメディアライブラリに追加された文書を閲覧、編集、共同編集するには、
-
左パネルのプラグインセクションでONLYOFFICEファイルページを開きます。
-
ONLYOFFICEエディターでファイルを開くには、ファイル名をクリックするか、右側のONLYOFFICEで編集ボタンをクリックします。

必要な形式でファイルをエディター内で保存するには、
- ファイルタブに移動します。
- 名前を付けてダウンロード... オプションをクリックし、必要な形式を選択します。
エディター内でファイルをお気に入りに登録するには、上部ツールバーの お気に入りに登録アイコンをクリックします。
ファイルリストに戻るには、
- ファイルタブに移動します。
- 右側のメニューでファイルの場所を開くオプションをクリックします。
アクセス権
Strapiメディアライブラリに追加されたファイルのアクセス権を管理するには:
- 左パネルの一般セクションにある設定タブに移動します。
- 管理パネルセクションで役割タブに移動します。
- 役割名の右側にある編集アイコンをクリックして役割を編集します。
ユーザーにファイルを編集する権限を与えるには、必要なユーザー役割に更新 + 削除アクセス権を設定します。
ユーザーにファイルを閲覧のみ許可するには、必要なユーザー役割にメディアライブラリへのアクセスアクセス権を設定します。
最も一般的な問題とその解決方法について詳しくは、トラブルシューティングガイドをご覧ください。