fbpx
印刷

PHPを使ってBuildVuマイクロサービスにアクセスする

はじめに

以下のチュートリアルでは、ホストされたBuildVuクラウドAPIを使ってPDFファイルをHTMLやSVGに変換する方法を紹介します:

上記のサービスはすべて普通のHTTPリクエストでアクセスできますが、このチュートリアルではオープンソースのPHP IDRCloudClientを使用します。IDRCloudClientはREST APIをシンプルなPHPラッパーとして提供します。

前提条件

composerを使って、以下のコマンドでidrsolutions-php-clientパッケージをインストールします:

				
					composer require idrsolutions/idrsolutions-php-client
				
			

サンプルコード

PDFファイルをHTMLやSVGに変換する基本的なコード例です。設定オプションと詳細機能は下記にあります。

				
					<?php

require_once __DIR__ . "/PATH/TO/vendor/autoload.php";

use IDRsolutions\IDRCloudClient;

$endpoint = "https://cloud.idrsolutions.com/cloud/" . IDRCloudClient::INPUT_BUILDVU;  
$parameters = array(
    //'token' => 'Token', // Required only when connecting to the IDRsolutions trial and cloud subscription service
    'input' => IDRCloudClient::INPUT_UPLOAD,
    'file' => __DIR__ . 'path/to/file.pdf'
);

$results = IDRCloudClient::convert(array(
    'endpoint' => $endpoint,
    'parameters' => $parameters
));

IDRCloudClient::downloadOutput($results, __DIR__ . '/');

echo $results['downloadUrl'];
				
			

コールバックURLへ結果を返す

BuildVu Microserviceは、完了時に変換ステータスを送信するコールバックURLを受け付けます。コールバックURLを使用すると、変換がいつ完了したかを判断するためにサービスをポーリングする必要がなくなります。
convert methodでは、以下のようにコールバックURLを指定することができます。

				
					$parameters = array(
    //'token' => 'Token', // Required only when connecting to the IDRsolutions trial and cloud subscription service
    'input' => IDRCloudClient::INPUT_UPLOAD,
    'callbackUrl' => 'http://listener.url',
    'file' => __DIR__ . 'path/to/file.pdf'
);

				
			

設定オプション

BuildVu APIは、変換をカスタマイズするためのキーバリューペア設定オプションを含む文字列化されたJSONオブジェクトを受け付けます。この設定はconvertメソッドに与える必要があります。PDFファイルをHTMLまたはSVGに変換するための設定オプションの完全なリストはこちらをご覧ください。

				
					'settings' => '{"key":"value","key":"value"}'
				
			

URLによるアップロード

ローカルファイルをアップロードするだけでなく、BuildVu Microserviceがダウンロードして変換を実行するURLを指定することもできます。これを行うには、convertメソッドのinputとfileの値を以下のように置き換えます。

				
					'input' => IDRCloudClient.DOWNLOAD
'url' => 'http://exampleURL/exampleFile.pdf'
				
			

認証を使用する

PDFファイルをHTMLまたはSVGに変換するためにユーザー名とパスワードを必要とする独自のBuildVu Microserviceをデプロイした場合、変換のたびにユーザー名とパスワードを提供する必要があります。これらは、以下のようにconvertメソッドにauthという変数を渡すことで提供されます。

				
					'username' => 'Username_If_Required',
'password' => 'Password_If_Required',
				
			

この場合、downloadOutputメソッドにも認証値を提供する必要があります。

				
					IDRCloudClient::downloadOutput($results, __DIR__ . '/','newFileName','username','password');
				
			
    MENU
    PAGE TOP