初心者のFileMaker pro Q&A (旧掲示板)

みんなに優しく、解りやすくをモットーに開設しています。 以下のルールを守りみんなで助け合いましょう。

1.ファイルメーカーで解らない事があればここで質問して下さい。 何方でも、ご質問・ご回答お願いします。 (優しく回答しましょう)

You are not logged in.

Announcement

新しい掲示板は、こちら:https://fm-aid.com/forum/t/filemaker


#1 2022-08-16 16:03:54

get
Guest

「URLから挿入」について

FileMakerよりWEB APIを利用してデータファイル送信のテストをしておりますが、
上手くいきません。

powershellからは正常に実行ができたのですが、FileMakerのURL挿入を利用して送信テストを
行うと「要求されたデータが見つかりません」がエラーとして戻ってきます。

有識者の方で対応方法が分かる方や記載方法がまずい内容はありますでしょうか?
※WEB API側の文字コードは「shift jis」の指定があります。

【powershell 成功】
curl.exe -v
-H "Content-Type:multipart/form-data"
-H "AccessToken:XXXXXX" -F "file=@C:/Users/test/Desktop/99999999_99_99999.DAT;filename=99999999_99_99999.DAT"
https://www.XXXXX.jp/XXXXX/xxxx/xxx/xxxx/99

【Filemaker ver.19 失敗】
URL:https://www.XXXXX.jp/XXXXX/xxxx/xxx/xxxx/99(自動的にエンコード)
cURLオプション:
-H "Content-Type:multipart/form-data"
-H "AccessToken:XXXXXXX"
-F "file=@C:/Users/test/Desktop/99999999_99_99999.DAT;filename=99999999_99_99999.DAT"

結果:要求されたデータが見つかりません

#2 2022-08-16 16:14:33

qb_dp
Member

Re: 「URLから挿入」について

ファイルを指定する場合、FileMakerでは、変数に設定する必要があります。

以下が参考になりそうな...
https://fm-aid.com/bbs2/viewtopic.php?pid=66155#p66155

Last edited by qb_dp (2022-08-16 17:22:38)

Offline

#3 2022-08-16 17:58:47

get
Guest

Re: 「URLから挿入」について

ご返信ありがとうございます。
送信データとして、スクリプト上では以下の様に設定しておりますが、変数の指定に誤りがあるのでしょうか?

ファイルを挿入[$変数A]
テキストを挿入[$変数B; -H ; "Content-Type:multipart/form-data" -H "AccessToken:XXXXXXX" -F "file=@$data;filename=__FILENAME__"]
変数を設定[$fileName ; $変数A ]
変数を設定[$option ;  Substitute ( $変数B ;  [ "__FILENAME__" ; $fileName ] ) ]
URLから挿入[選択; ダイアログあり:オフ; $結果; $url; SSL証明書の検証; cURLオプション:$option]

#4 2022-08-16 18:27:19

get
Guest

Re: 「URLから挿入」について

修正箇所がありました。
以下になります。

ファイルを挿入[$変数A]
テキストを挿入[$変数B; -H ; "Content-Type:multipart/form-data" -H "AccessToken:XXXXXXX" -F "file=@$変数A;filename=__FILENAME__"]
変数を設定[$fileName ; $変数A ]
変数を設定[$option ;  Substitute ( $変数B ;  [ "__FILENAME__" ; $fileName ] ) ]
URLから挿入[選択; ダイアログあり:オフ; $結果; $url; SSL証明書の検証; cURLオプション:$option]

#5 2022-08-16 18:29:29

qb_dp
Member

Re: 「URLから挿入」について

ファイルを指定する場合、FileMakerでは、変数に設定する必要があるので、
以下のようにしてみては。

ファイルを挿入[$data]
テキストを挿入[$変数B; -H ; "Content-Type:multipart/form-data" -H "AccessToken:XXXXXXX" -F "file=@$data;filename=__FILENAME__"]
変数を設定[$fileName ; $変数A ]
変数を設定[$option ;  Substitute ( $変数B ;  [ "__FILENAME__" ; GetContainerAttribute ($data ; "filename") ] ) ]
URLから挿入[選択; ダイアログあり:オフ; $結果; $url; SSL証明書の検証; cURLオプション:$option]

Last edited by qb_dp (2022-08-16 18:30:24)

Offline

#6 2022-08-16 18:32:52

qb_dp
Member

Re: 「URLから挿入」について

書いている間に修正が来てましたね。
エラーになっているのでしょうか?

Offline

#7 2022-08-16 18:37:31

qb_dp
Member

Re: 「URLから挿入」について

以下を追加すれば、サーバーのレスポンスが取得できます。
--dump-header $$responseHeaders

Offline

#8 2022-08-16 19:05:27

himadanee
Guest

Re: 「URLから挿入」について

変数だけでなくオブジェクトフィールドを使用する必要があります。
「ファイルにアクセスする場合は、ファイルを含むオブジェクトフィールドに変数を設定して cURL オプションの引数としてこの変数を使用します。」
https://help.claris.com/ja/pro-help/con … s.html#tn4

#9 2022-08-17 12:20:22

qb_dp
Member

Re: 「URLから挿入」について

試してみました。
ファイルを挿入[$data] を使えば、オブジェクトフィールドを介さなくても大丈夫でした。

Offline

#10 2022-08-17 12:55:57

himadanee
Guest

Re: 「URLから挿入」について

そうでしたか。仕様の変更にヘルプの修正が追い付いてないんですね。

「ファイルを挿入」自体が、「フィールドに関連するスクリプトステップ」になっちゃってますしね...

#11 2022-08-17 16:33:44

get
Guest

Re: 「URLから挿入」について

ご返信ありがとうございます。

WEB APIを利用した連携に関してですが、
--dump-header $変数を送信する事で、正常に送信できている
事が確認できました。

また、方法としてはオブジェクトフィールドを利用する方法およびファイル挿入で
変数でオブジェクトを格納する方法の両方で試してみましたが、両方とも成功しました。

ただし、送信は成功しておりますが、FileMaker側でURLからの挿入結果としては
「要求されたデータが見つかりません」がかえってきておりますが、--dump-header $変数で
送信結果は取得できましたのでそれで対応を行います。

以上、本件を解決とさせて頂きます。

Registered users online in this topic: 0, guests: 1
[Bot] ClaudeBot

Board footer

Powered by FluxBB
Modified by Visman

[ Generated in 0.006 seconds, 9 queries executed - Memory usage: 565.3 KiB (Peak: 579.82 KiB) ]