1

編集2

無効なパラメーターを渡していたというエラーが見つかりました。

お手数をおかけして申し訳ありません

Google カスタム検索エンジンを初めて使用していますが、これまでのところすべて問題ありません。ただし、空白のあるアイテムのクエリを送信しようとすると、検索エンジンは不適切なリクエスト応答を返します。

    myUrl = (CustomSearchEngineURL + API_KEY + "&cx=" + cxKey + "&q="
            + q.replace(" ", "%20") + "&searchType=" + searchType
            + "&imgType=" + imgType + "&imgSize=" + imgSize + "&num=20&alt=json");

これはこれを返します

 com.google.api.client.http.HttpResponseException: 400 Bad Request

編集

私は323goのアドバイスを受けて、私のqをエンコードしようとしましたが、これが私がそれを実装した方法です

String encodedParms = null;
    try {
        encodedParms = URLEncoder.encode(q, "UTF-8");
    } catch (UnsupportedEncodingException e1) {
        // TODO Auto-generated catch block
        e1.printStackTrace();
    }
    myUrl = (CustomSearchEngineURL + API_KEY + "&cx=" + cxKey + "&q="
            + encodedParms + "&searchType=" + searchType + "&imgType="
            + imgType + "&imgSize=" + imgSize + "&num=20&alt=json");

    Log.d(Tag, myUrl);

    HttpRequestFactory httpRequestFactory = createRequestFactory(HTTP_TRANSPORT);

    HttpRequest request;
    try {
        request = httpRequestFactory.buildGetRequest(new GenericUrl(myUrl));
        String response = streamToString(request.execute().getContent());
    } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }

私のログでは、これをURLとして取得しました

https://www.googleapis.com/customsearch/v1?key=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx-w&cx=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx&q=Sunway+Lagoon+Theme+Park&searchType=image&imgType=photo&imgSize=xxlarge&num=20&alt=json

私はまだ同じ悪いリクエストエラーを受け取りました

誰か私が何をしているのか教えてください

4

1 に答える 1

0

単語の間に「+」を追加しないのはなぜですか、私は同じ問題を抱えていました
「word1 word2」で - 応答 400 - 悪い要求
「word1+word2」で - 応答 2000 - 悪い要求

于 2016-12-29T18:54:06.323 に答える