はじまり
リサちゃん
うわあ、どこが悪いんだろおおう
135ml
今回はBashか?
リサちゃん
文法が違うことは分かるんだけど・・・
135ml
どこだっどこだ。
起きた事象
GitHub Actionsを使って、別のAPIに対してcurlを試そうとした時の事です
# ...
- name: Record log
run: |
curl '${{ env.API_ENDPOINT }}?scriptname=${{ env.MY_SCRIPT_NAME }}&function-name=${{ env.THIS_FUNCTION_NAME }}' \
-X POST \
-H "Content-Type: application/json" \
-d '{"path": "/log", "method": "POST", "client_info": {"id": "${{ env.CLIENT_ID }}", "secret": "${{ env.CLIENT_SECRET }}"}}'
# ...
エラー文
0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0curl: (6) Could not resolve host: POST-H
curl: (3) URL using bad/illegal format or missing URL
curl: (3) nested brace in URL position 51:
{"path": "/log", "method": "POST", "client_info": {"id": "***", "secret": "***"}}
^
Error: Process completed with exit code 3.
何が原因だあ?
原因は・・・
改行の前に半角スペースを入れてないからでした🐽
これが正解。
# ...
- name: Record log
run: |
curl '${{ env.API_ENDPOINT }}?scriptname=${{ env.MY_SCRIPT_NAME }}&function-name=${{ env.THIS_FUNCTION_NAME }}' \
-X POST \
-H "Content-Type: application/json" \
-d '{"path": "/log", "method": "POST", "client_info": {"id": "${{ env.CLIENT_ID }}", "secret": "${{ env.CLIENT_SECRET }}"}}'
# ...
なるほど、-Hヘッダーの部分を読み取れないというのはそういうことでしたか。
curlでJSONを書くと煩雑で混乱しがちになります・・・
おしまい
リサちゃん
ああら、そんなことかあ。
135ml
つい、データ部に目が行っちゃうよな
以上になります!
コメント