2016-08-22 61 views
0

我剛剛學習如何使用jQuery來執行Ajax調用,並試圖使用Imgur API構建簡單的圖像搜索。我已經獲得了基本搜索以返回一個圖像對象,但我無法弄清楚如何將高級搜索參數傳遞給搜索。如何使用Imgur API將參數傳遞到圖庫搜索

這裏是我的代碼:

$('#findImage').on('click', function(){ 

    var searchTerm = $('#image-input').val(); 

    var queryURL = "https://api.imgur.com/3/gallery/search/q?=" + searchTerm; 

    $.ajax({ 
     url: queryURL, 
     method: 'GET', 
     headers: { 
     Authorization: 'Client-ID ' + clientID 
     } 
    }) 

    .done(function(response) { 

    for (var i = 0; i < 10; i++) { 

     var results = response.data; 

     console.log(results[i]); 

     } 

    }); 

所以它返回一個對象,但什麼我希望做的僅僅是搜索JPEG文件。在Imgur文檔,它說以下內容:

簡單的搜索查詢參數 核心價值 q查詢字符串(注:如果高級搜索參數的設置,這個查詢字符串被忽略)。該參數還支持布爾運算符(AND,OR,NOT)和索引(tag:user:title:ext:subreddit:album:meme :)。一個例子複合查詢是「標題:貓,狗分機:GIF」

高級搜索查詢參數

核心價值

Q_all期間搜索所有的這些話(和)

q_any搜索對於任何的這些話(或)

q_exactly搜索正是這個詞彙或短語

q_not排除結果MATC hing this

q_type顯示任何文件類型的結果,jpg | png | gif | anigif(動畫gif)|相冊

q_size_px大小範圍小(500像素平方或更小)| med(500至2000像素平方)|大(2,000至5,000像素平方)| lgg(5,000至10,000像素平方)| (10,000平方像素及以上)

我的問題是,我如何將這些高級搜索參數傳遞給ajax調用?

+0

您的查詢字符串錯字......應該是'Q =''不Q ='?。此外,請確保您使用'encodeURIComponent()'與查詢字符串中使用的任何任意數據。 – Brad

回答

0

可以設置參數值如下:

queryURL = "https://api.imgur.com/3/gallery/search/q?=" + search term + "&q_type=jpeg&q_size_px=500";