teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

3

回答として無用な情報、記述なので削除。

2020/06/16 18:25

投稿

dodox86
dodox86

スコア9398

answer CHANGED
@@ -34,6 +34,4 @@
34
34
  ```sh
35
35
  # 例
36
36
  curl "https://www.googleapis.com/customsearch/v1?key=[*****]&cx=[*****]....."`
37
- ```
37
+ ```
38
-
39
- ※私も`curl`は良く使用していますが、いつも無意識にURLを`"`で括っていたのでこのような問題があることに気が付きませんでした。

2

誤字修正

2020/06/16 18:25

投稿

dodox86
dodox86

スコア9398

answer CHANGED
@@ -25,7 +25,7 @@
25
25
  **私の回答へいただいた以下のコメントを読んで追記しました:**
26
26
  > Webブラウザに直接URLを入力した場合は,いずれも問題なく返ってきました
27
27
 
28
- `curl`コマンドの実行で問題が起きているということになりますね。私の方で試したみたところ、質問者さんの問題が再現しました。こちらの記事で指摘されている問題が起きているようです。
28
+ `curl`コマンドの実行で問題が起きているということになりますね。私の方で試したみたところ、質問者さんの問題が再現しました。こちらの記事で提示されている問題が起きているようです。
29
29
 
30
30
  [curlでGETリクエスト送る時の注意点 - Smoky God Express/Hetana Blog](https://hkdnet.hatenablog.com/entry/2015/09/19/133415)
31
31
 
@@ -36,4 +36,4 @@
36
36
  curl "https://www.googleapis.com/customsearch/v1?key=[*****]&cx=[*****]....."`
37
37
  ```
38
38
 
39
- ※私も`curl`は良く使用していますが、いつも無意識にURLを`"`括っていたのでこの問題に気が付きませんでした。
39
+ ※私も`curl`は良く使用していますが、いつも無意識にURLを`"`括っていたのでこのような問題があることに気が付きませんでした。

1

問題が再現したので対応先を追記

2020/06/16 18:13

投稿

dodox86
dodox86

スコア9398

answer CHANGED
@@ -19,4 +19,21 @@
19
19
  curl https://www.googleapis.com/customsearch/v1?key=[*****]&cx=[*****]&searchType=image&q=%E6%9D%B1%E6%97%A5%E6%9C%AC%E5%A4%A7%E9%9C%87%E7%81%BD&lr=lang_ja&safe=off&num=2&start=1
20
20
  ```
21
21
 
22
- もし、これでうまくいかなかった場合、問題の切り分けとして`q=`をURLエンコードしなくてもだいじょうぶなパターン、例えば「cat」や「dog」など、英数字のみで構成される簡単な単語に差し替えて試してみて、もしそれで動くのであれば、やはりその部分が問題だということになります。「URLエンコード」については「GETメソッド URLエンコード」などとキーワード指定して検索するなどして別途、調べてみてください。
22
+ もし、これでうまくいかなかった場合、問題の切り分けとして`q=`をURLエンコードしなくてもだいじょうぶなパターン、例えば「cat」や「dog」など、英数字のみで構成される簡単な単語に差し替えて試してみて、もしそれで動くのであれば、やはりその部分が問題だということになります。「URLエンコード」については「GETメソッド URLエンコード」などとキーワード指定して検索するなどして別途、調べてみてください。
23
+
24
+ ---
25
+ **私の回答へいただいた以下のコメントを読んで追記しました:**
26
+ > Webブラウザに直接URLを入力した場合は,いずれも問題なく返ってきました
27
+
28
+ `curl`コマンドの実行で問題が起きているということになりますね。私の方で試したみたところ、質問者さんの問題が再現しました。こちらの記事で指摘されている問題が起きているようです。
29
+
30
+ [curlでGETリクエスト送る時の注意点 - Smoky God Express/Hetana Blog](https://hkdnet.hatenablog.com/entry/2015/09/19/133415)
31
+
32
+ クエリー文字列中で`&`が多用されているために`curl`コマンドにとって不正なコマンドラインオプションになってしまう、と言うことです。正しくURLエンコードをした上で、`curl`へ渡すURLを`"`で括って実行してください。
33
+
34
+ ```sh
35
+ # 例
36
+ curl "https://www.googleapis.com/customsearch/v1?key=[*****]&cx=[*****]....."`
37
+ ```
38
+
39
+ ※私も`curl`は良く使用していますが、いつも無意識にURLを`"`に括っていたのでこの問題には気が付きませんでした。