File オブジェクト
このページの翻訳はAIによって自動的に行われました。可能な限り正確な翻訳を心掛けていますが、原文と異なる表現や解釈が含まれる場合があります。正確で公式な情報については、必ず英語の原文をご参照ください。
ローカル ストレージ (
"type":"File"
) または Azure Blob Storage ("type":"Azure"
) からファイルをフェッチする場合は、m.defaults.json
でfileProvider
設定を適切に構成する必要があります。
パラメーター
パラメーター | 型 | 説明 |
---|---|---|
type | String | ファイルを取得するソースのタイプ。ローカル ファイルまたはネットワーク ファイルの場合は File 、HTTP リソースの場合は Web 、Azure BLOB ストレージ ファイルの場合は Azure となります。 |
path * | String | File タイプの場合に、このファイルへのパスを表します。 |
href * | String | Web タイプの場合に、このリソースへの URL を表します。 |
key * | String | Azure タイプの場合に、このファイルのファイル キーを表します。ファイル キーはファイル プロバイダー名とファイル名の組み合わせであり、たとえば「myProvider-myfile.jpg」のようになります。 つまり「myProvider」は、サービス アプリケーションのファイル プロバイダーとして設定する必要があります)。 |
- これらのキーのいずれか 1 つを、
type
キーと組み合わせて使用します。
ファイル タイプ
ファイル
File
フェッチ ソースは、ジョブを処理するサービスからアクセス可能なハード ドライブおよびネットワーク共有に保存されているファイルを取得する目的使用できます。
{
"type" : "File",
"path" : "\\\\server\\path\\to\\file\\on\\local\\machine.jpg"
}
ローカル マシンからファイルをフェッチする前に、このファイルの取得先となる場所が、設定ファイル (通常は m.defaults.json
) 内の fileProviders
プロパティに追加されていることを確認する必要があります。 通常、これは既定で設定済みのはずです。
...
"fileProvider": {
"providers": [
...
{
"name": "local",
"type": "Stylelabs.M.Files.DirectoryFileProvider, Stylelabs.M.Files",
"parameters": {
"basePath": "C:\\temp\\m\\files",
"namingStrategy": "Default"
}
},
...
]
},
...
Web
Web
フェッチ ソースは、(オプションで事前に署名された) URL からアクセス可能なリソースを取得する目的で使用できます。
{
"type" : "Web",
"href" : "http://www.url.to/file/online.jpg"
}
任意の URL を使用可能で、ファイル名は Content-Disposition
ヘッダー (利用可能な場合) から取得されるか、パスから構成されます。 href
プロパティは、リソースの URL を指定します。
ファイル名は、実行順に、次のルールに基づいて自動的に取得されます。
- URL がファイル名を参照している場合は、そのファイル名が使用されます。つまり、
http://www.gstatic.com/webp/gallery/5.jpg
であれば5.jpg
が返されます。 - URL 内に
filename
パラメーターが指定されている場合は、そのファイル名の値が使用されます。つまり、http://picsum.photos/400/300/?image=1&filename=test.jpeg
であればtest.jpeg
が返されます。 - 上記のいずれでもない場合は、ホスト名、トップ レベル ドメイン、および GUID (グローバル一意識別子) が使用されます。これらがすべて
_
(アンダースコア) によって連結された値が、自動的に生成されます。つまり、http://picsum.photos/400/300/?image=1
であればpicsum_photos_814be
となります。 この場合は、ファイル拡張子が付かないことに注意してください。
Azure
Azure
フェッチ ソースは、Azure Blob Storage からファイルを取得する目的で使用できます。
{
"type" : "Azure",
"key" : "fileProviderName-path/to/file/on/blob/storage.jpg"
}
BLOB ストレージからファイルをフェッチする前に、Azure Blob Storage が設定ファイル (通常は m.defaults.json
) 内の fileProviders
プロパティに追加されていることを確認する必要があります。
...
"fileProvider": {
"providers": [
...
{
"name": "fileProviderName",
"type": "Stylelabs.M.Files.Azure.AzureFileProvider, Stylelabs.M.Files.Azure",
"parameters": {
"accountName": "blobStorageAccountName",
"accessKey": "blobSotrageAccessKeyUsuallyEndingIn==",
"containerName": "blobStorageContainerName"
}
}
]
},
...
プロバイダーには次のプロパティがあります。
パラメーター | 型 | 説明 |
---|---|---|
name | String | プロバイダーの名前。 この名前は、ファイル プロバイダーのリスト内で一意である必要があります。 |
type | String | Azure ファイル プロバイダーの場合は、"Stylelabs.M.Files.Azure.AzureFileProvider, Stylelabs.M.Files.Azure" のように設定する必要があります。 |
parameters | Object | Azure Blob Storage にアクセスするために必要な資格情報を含むオブジェクト |
parameters.accountName | String | Azure Blob Storage アカウントの名前。 Azure ポータルのストレージ アカウントの概要で確認できます。 |
parameters.accessKey | String | Azure Blob Storage のアクセス キー。 Blob Storage の Azure ポータルの [アクセス キー] タブで確認できます。 |
parameters.containerName | String | 取得しようとするファイルが置かれている Azure Blob ストレージ コンテナーの名前。Blob Storage の Azure ポータルの [コンテナー] タブで確認できます。 |
fileProviders
リストには、その名前がリスト内で一意である限り、必要な数の Azure Blob ストレージを追加できます。
設定が完了した時点で、key
プロパティを使用して、フェッチ ジョブに正しいファイルを指定できます。 key
プロパティは、次の 2 つの値を含む文字列であるため、特に注意が必要です。
- ファイルの要求先となる
fileProvider
の名前 - ストレージから要求しているファイルへのパス
この 2 つの値を、-
(ダッシュ) を使用して連結し、次のような値として指定します。
"fileProviderName-path/to/file/on/blob/storage.jpg"