みんなに優しく、解りやすくをモットーに開設しています。 以下のルールを守りみんなで助け合いましょう。
1.ファイルメーカーで解らない事があればここで質問して下さい。 何方でも、ご質問・ご回答お願いします。 (優しく回答しましょう)
You are not logged in.
Pages: 1
FileMaker Pro 19.3(Mac)から,NotionのAPIを叩いて,Notionのデータベースに投稿しようとして,四苦八苦しております.
ターミナルから以下のコマンドで投稿することはできています.
```````````````````````````````````````````````````````
cURL -X POST -H "Authorization: Bearer secret_************"
-H "Content-Type: application/json"
-H "Notion-Version: 2021-05-13"
--data '{
"parent": { "database_id": "************" },
"properties": {
"内容": {
"title": [
{
"text": {
"content": "これはテストです"
}
}
]
}
}
}'
```````````````````````````````````````````````````````
ところが,これをFileMakerのスクリプトから実行すると,次のようなエラーが出ます.
{"object":"error","status":400,"code":"invalid_json","message":"Error parsing JSON body."}
実行しているFileMakerスクリプトは以下のようなものです.
```````````````````````````````````````````````````````
変数を設定 [ $$res ; 値: "" ]
変数を設定 [ $$header ; 値: "" ]
変数を設定 [ $$opt ; 値: "" ]
テキストを挿入 [ ターゲット: $$header ; 「-X POST -H "Authorization: Bearer secret_************" \ -H "Content-Type: application/json; " \ -H "Notion-Version: 2021-05-13" \ 」 ]
変数を設定 [ $$opt ; 値: $$header & " --data '{ \"parent\": { \"database_id\": \"************\" }, \"properties\": { \"Name\": { \"title\": [ { \"text\": { \"content\": \"これはテストです\" } } …" ]
URL から挿入 [ 選択 ; ダイアログあり: オフ ; ターゲット: $$res ; "https://api.notion.com/v1/pages" ; cURL オプション: $$opt ; URL を自動的にエンコードしない ]
カスタムダイアログを表示 [ "結果" ; $$res ]
```````````````````````````````````````````````````````
文字コードまわりか,もしくはダブルコーテーションのエスケープでどこか見落としがあるか,その辺りかと思うのですが,
どうしても自分では見つかりません.
どなたか,FileMakerからNotionのAPIへの投稿で成功している方,お分かりになりませんでしょうか?
どうかよろしくお願いします。
Offline
--dataの囲みにシングルクオートは使えません。ダブルが重なってややこしくなるので、データを変数に入れて変数名を引数にするのがいいです。
テキストを挿入、の方で改行を¥でエスケープしているつもりのようですが、これも無理だったと思います。オプション間の改行は必要ないので、無視されてて問題ないかな。
himadanee様,返信ありがとうございます.
ご指摘の通りに,「シングルクオートはやめて」,また,「テキストを挿入」と「変数を設定」が混在していたのを2行を1行にまとめて,
(ヘッダー部分とボディ部分をまとめて$$optに入れるようにして)
テキストを挿入 [ ターゲット: $$opt ; ]として,挿入内容を以下のようにしました
```````````````````````````````````````````````````````
-X POST
-H "Authorization: Bearer secret_************"
-H "Content-Type: application/json"
-H "Notion-Version: 2021-05-13"
--data "{ "parent": { "database_id": "************" },
"properties": {
"内容Text": {
"title": [
{
"text": {
"content": "これはテストです"
}
}
]
}
}
}"
```````````````````````````````````````````````````````
しかし,まだ同じエラーが出る状態です.
何か見落としているのでしょうか? お分かりになりましたらよろしくお願いします.
Offline
--data のところは、以下のようにならないとイケないのでは。
--data "{ \"parent\": { \"database_id\": \"************\" },
\"properties\": {
\"内容Text\": {
\"title\": [
{
\"text\": {
\"content\": \"これはテストです\"
}
}
]
}
}
}"
Offline
qb_dp様
おっしゃる通りでした!
無事投稿できました!
ありがとうございました.
Offline
Pages: 1
[ Generated in 0.010 seconds, 9 queries executed - Memory usage: 518.25 KiB (Peak: 523.16 KiB) ]