URL から挿入
URL からフィールドまたは変数に内容を入力します。
オプション
-
[内容全体を選択] オプションを選択すると、フィールドまたは変数の内容が置き換えられます。このオプションが選択されていない場合、次のようになります:
-
フィールドの場合、アクティブなフィールドで選択されている部分のみが置き換えられるか、または挿入ポイントにデータが挿入されます。選択されている部分がない場合は、挿入ポイントに結果が挿入されます。デフォルトの挿入ポイントはフィールド内のデータの末尾です。
-
オブジェクトデータがない変数の場合、変数の現在の値の末尾にデータが挿入されます。オブジェクトデータがある変数の場合、変数の内容が置き換えられます。
-
-
[ダイアログあり] ではこのスクリプトステップを実行したときに [[URL から挿入] オプション] ダイアログボックスを表示するかどうかが指定されます。
-
[ターゲット] では URL の内容を挿入するフィールドまたは変数を指定します。変数が存在しない場合は、このスクリプトステップによって変数が作成されます (変数の使用を参照)。
-
[URL を指定] では URL を入力するか、計算式から URL を作成できます。
-
[URL を自動的にエンコード] を使用すると、特殊文字が URL に必要な対応エンコード値に置き換えられます。たとえば、スペース文字は「
%20
」で置き換えられます。このオプションの選択が解除されると、URL は入力されたままの形式になります。cURL オプションはエンコードされません。 -
[SSL 証明書の検証] では URL で指定されたサーバーの SSL 証明書を検証します。証明書が検証できない場合、ユーザはそのまま接続するか、キャンセルしてこのスクリプトステップをスキップするかを選択できます。証明書が検証できず、[エラー処理] スクリプトステップ が [オン] に設定されている場合、[URL から挿入] はサーバーが使用不可の場合と同様に動作します。
-
[cURL オプションの指定] では 1 つまたは複数のサポートされる cURL オプションを計算式として入力することができます。サポートされている cURL オプションを参照してください。
互換性
製品 | サポート |
FileMaker Pro | はい |
FileMaker Go | はい |
FileMaker WebDirect | はい |
FileMaker Server | はい |
FileMaker Cloud | はい |
FileMaker Data API | はい |
カスタム Web 公開 | はい |
起点バージョン
12.0
説明
このスクリプトステップでは URL によって指定されたリソースを変数またはフィールドにダウンロードします。次のプロトコルがサポートされています:
-
http、https
-
ftp、ftps、sftp
-
file
-
smb
-
smtp、smtps
-
ldap、ldaps
例外についてはメモを参照してください。その他のプロトコルはサポートされていないためエラーが返されます。
このスクリプトステップを実行する前に、ターゲット変数を指定するか、現在のレイアウト上でターゲットフィールドを指定するか、フィールドをクリックするか、または [フィールドへ移動] スクリプトステップを使用します。[ターゲット:] を指定していない場合は、アクティブなフィールドにデータが配置されます。それ以外の場合は、このスクリプトステップはエラーコードを返します。このエラーコードは Get (最終エラー) 関数を使用して処理することができます。
オブジェクトフィールドでサポートされているピクチャ、オーディオ/ビデオ形式の一覧は、オブジェクトフィールドのデータの操作を参照してください。
重要 FileMaker WebDirect の性能を高めるには、ターゲットがフィールドの場合は [内容全体を選択] オプションが選択されていることを確認してください。
メモ
-
Claris Connect は Web アプリケーションおよびサービスに FileMaker カスタム App を簡単に接続できるようにするクラウドベースの統合プラットフォームです。Claris Connect を参照してください。
-
[URL から挿入] でサポートされるのは、[URL を指定] の UTF-8 のみです。ただし、[cURL オプションの指定] の場合は cURL オプションで引数の文字エンコードを制御することができます。サポートされている cURL オプションを参照してください。
-
[ターゲット] が変数の場合、データは通常テキストとして格納されます。オブジェクトデータとして格納するには、サポートされている cURL オプションに記載された cURL オプションを指定してください。
-
このスクリプトステップがサーバーからの応答を待つ時間を制御するには、
--max-time
cURL オプションの値を指定してください。 -
FileMaker WebDirect の場合:
-
[ダイアログあり] オプションが [オン] の場合、このスクリプトステップは [URL を自動的にエンコード] が選択されている場合と同様に動作します。
-
[内容全体を選択] オプションが選択されていない場合、[URL から挿入] が内容をテキストフィールドに挿入すると、URL からの内容がテキストフィールドに追加されます。複数の取得は予期せぬ結果となり、パフォーマンスを低下させる結果になる場合があります。
-
-
file プロトコルの場合:
-
FileMaker WebDirect、FileMaker Data API、およびカスタム Web 公開ではサポートされていません。
-
「Documents」フォルダまたはテンポラリフォルダ内のファイルのみを参照するサーバーサイドスクリプトで使用できます (サーバーサイドスクリプト内のパスを参照)。
-
-
Get (ドキュメントパス) や Get (テンポラリパス) などの取得関数から返されるパスは FileMaker 形式であるため、[URL を指定] で file プロトコルとともに使用する前に、このパスを標準 URL 形式に変換する必要があります。(ConvertFromFileMakerPath 関数を参照してください。) ローカルファイルにアクセスする簡単な方法として、[データファイルから読み取る] スクリプトステップを使用する方法があります。この方法ではパスを変換せずに使用します。
-
FileMaker Go は、ldap および ldaps プロトコルをサポートしていません。
-
サーバーからの応答に内容が何もない場合、このスクリプトステップが実行された後、Get (最終エラー) から「10」(「要求されたデータが見つかりません」) が返される可能性があります。応答に内容がないことが想定される場合、この戻り値は必ずしもエラーの発生を示すものではありません。
例 1
Web サイトにアクセスして、売り上げレポートオブジェクトフィールドに PDF を挿入します。
URL から挿入 [ダイアログあり: オフ ; ターゲット: 顧客::売り上げレポート ; "https://example.com/sales_report.pdf"]
例 2
顧客の住所を示す地図を住所地図オブジェクトフィールドに挿入します。
URL から挿入 [ダイアログあり: オフ ; ターゲット: 顧客::住所地図 ; "http://maps.google.com/maps/api/staticmap?center=" & 顧客::住所 & "&zoom=14&markers=" & 顧客::住所 & "&size=256x256&sensor=false&key=API_KEY"]
例 3
https://www.apple.com の HTML コードを挿入します。
URL から挿入 [ダイアログあり: オフ ; ターゲット: 顧客::HTML Web サイトコード ; "https://www.apple.com"]
例 4
cURL オプション --user
および --upload-file
を使用して、資格情報 myusername
および mypassword
でオブジェクトフィールドのファイルをサーバーにアップロードしてから、サーバーからの結果を変数 $$results
に格納します。HTTP または HTTPS の場合、サーバー上のファイル名はオブジェクトフィールドのファイル名と同じになります。
変数を設定 [$file ; 値: テーブル::オブジェクト]
URL から挿入 [ダイアログあり: オフ ; ターゲット: $$results ;
"https://example.com/uploads" ; SSL 証明書の検証 ;
cURL オプション: "--user myusername:mypassword --upload-file $file
--header \"Content-type: image/png\""]
例 5
セキュア接続を使用して電子メールを SMTP サーバーで送信します。cURL オプションには、送信者のアドレスに --mail-from
、受信者のアドレスに --mail-rcpt
、メッセージを含むファイルに --upload-file
、SMTP サーバーへのサインインに使用する認証情報に --user
を使用します。
変数を設定 [$mail ; 値: TextEncode (テーブル::メール ; "utf-8" ; 3)]
URL から挿入 [選択 ; ダイアログあり: オフ ; ターゲット: $result ;
"smtps://smtp.example.com: 465" ; SSL 証明書の検証 ; cURL オプション:
"--mail-from sender@example.com
--mail-rcpt recipient@example.com
--upload-file $mail
--user account:password"]
[テーブル::メール] テキストフィールドには、HTML 形式の電子メール本文を含む次のメッセージコンテンツが取り込まれます:
From: 送信者の名前 <sender@example.com>
To: 受信者の名前 <recipient@example.com>
Subject: 件名行
Content-Type: text/html; charset="utf8"
<html><body>電子メールの本文</body></html>