Javascript GIPHY API-如何搜索Giphs?

Javascript GIPHY API-如何搜索Giphs?,javascript,jquery,html,json,giphy-api,Javascript,Jquery,Html,Json,Giphy Api,我的问题是: 看起来我的代码有点不正确。搜索不起作用。我不熟悉API 如何获取用户搜索的特定搜索结果 Giphy API的GitHub链接位于以下位置: JS document.addEventListener('DOMContentLoaded',函数(){ //q=“”; 请求=新的XMLHttpRequest; //request.open('GET','http://api.giphy.com/v1/gifs/random?api_key=dc6zaTOxFJmzC&tag=“+q,正确

我的问题是: 看起来我的代码有点不正确。搜索不起作用。我不熟悉API

如何获取用户搜索的特定搜索结果

Giphy API的GitHub链接位于以下位置:

JS

document.addEventListener('DOMContentLoaded',函数(){
//q=“”;
请求=新的XMLHttpRequest;
//request.open('GET','http://api.giphy.com/v1/gifs/random?api_key=dc6zaTOxFJmzC&tag=“+q,正确);
request.open('GET','http://api.giphy.com/v1/gifs/search?q=funny+cat&api_key=dc6zaTOxFJmzC');
request.onload=函数(){
如果(request.status>=200&&request.status<400){
data=JSON.parse(request.responseText).data.image\uURL;
控制台日志(数据);
document.getElementById(“here_is_gif”).innerHTML='';
}否则{
log('已到达giphy,但API返回错误');
}
};
request.onerror=函数(){
log(“连接错误”);
};
request.send();
});
HTML

让我们搜索一些gif!
在下面搜索GIF的精彩世界

搜索GIF


提取用户输入后,您可以将其放入变量中

你的API链接(复制到这里)只是在搜索“搞笑猫”。
request.open('GET','http://api.giphy.com/v1/gifs/search?q=funny+cat&api_key=dc6zaTOxFJmzC')

你可以通过这样做来解决这个问题

var searchTerm=prompt('addyoursearchthere');
searchTerm=searchTerm.trim()。替换(//g,“+”);//在空格所在的位置添加+号
request.open('GET','http://api.giphy.com/v1/gifs/search?q=“+searchTerm+”&api_key=dc6zaTOxFJmzC”)

因为,我不确定是否粘贴了所有正在使用的代码,所以我只演示了如何将类似
funcy+cat
的短语替换为名为
searchTerm
的变量

为了从
字段中提取用户的输入,您可以使用jQuery,然后将其传递到搜索词变量中


奇怪的是,我已经用Giphy API做了一个测试。

一旦提取了用户输入,就可以将其放入变量中

你的API链接(复制到这里)只是在搜索“搞笑猫”。
request.open('GET','http://api.giphy.com/v1/gifs/search?q=funny+cat&api_key=dc6zaTOxFJmzC')

你可以通过这样做来解决这个问题

var searchTerm=prompt('addyoursearchthere');
searchTerm=searchTerm.trim()。替换(//g,“+”);//在空格所在的位置添加+号
request.open('GET','http://api.giphy.com/v1/gifs/search?q=“+searchTerm+”&api_key=dc6zaTOxFJmzC”)

因为,我不确定是否粘贴了所有正在使用的代码,所以我只演示了如何将类似
funcy+cat
的短语替换为名为
searchTerm
的变量

为了从
字段中提取用户的输入,您可以使用jQuery,然后将其传递到搜索词变量中


奇怪的是,我已经用Giphy API做了一个测试。

这里是一个使用jQuery的解决方案。 有关更多信息,请参阅他们的文档。。。

还要注意的是,giphyapi返回的是图像的URL,而不是图像本身。因此,
属性使用url呈现图像

检查浏览器的控制台日志以查看API响应的外观

下面是完整的HTML,请注意jQuery必须始终链接到代码上方


Giphy应用程序
让我们找些礼物吧!
在下面搜索GIF的精彩世界

搜索GIF //这将在调用jQuery之前等待页面加载 $(文档).ready(函数(){ //第1部分-使用jQuery Click Listener收集用户输入注意:我们使用class(.)of search_按钮 $('.search_button')。在('单击',函数()上){ //通过id(#)获取输入表单的值来收集用户 var userInput=$('#form value').val().trim(); //更改输入以适应API(即将空格更改为+) userInput=userInput.replace(//g,“+”); //创建Giphy API URL 变量queryURL=http://api.giphy.com/v1/gifs/search?q=“+userInput+”&api_key=dc6zaTOxFJmzC”; //第2部分-使用AJAX调用GIPHY API(注意.done()函数等待API响应) $.ajax({url:queryURL,方法:'GET'}).done(函数(响应){ //这是API响应数据,是一个包含25个GIF的JSON对象 console.log(response.data); //为了简单起见,我们将使用第一个gif(即,在位置0处) var giphyURL=response.data[0].images.fixed_height.url; console.log(giphyURL) //现在,您可以将其传递到“here\u is\u gif”中
下面是一个使用jQuery的解决方案。 有关更多信息,请参阅他们的文档。。。

还要注意的是,giphyapi用一个URL回复图像,而不是图像本身

检查浏览器的控制台日志以查看API响应的外观

下面是完整的HTML,请注意jQuery必须始终链接到代码上方


Giphy应用程序
让我们找些礼物吧!
在下面搜索GIF的精彩世界

搜索GIF //这将在调用jQuery之前等待页面加载 $(文档).ready(函数(){ //第1部分-使用jQuery Click Listener收集用户输入注意:我们使用class(.)of search_按钮 $('.search_button')。在('单击',函数()上){ //通过id(#)获取输入表单的值来收集用户 var userInput=$('#form value').val().trim(); //改变现状
document.addEventListener('DOMContentLoaded', function () {

//q = "";

request = new XMLHttpRequest;
//request.open('GET', 'http://api.giphy.com/v1/gifs/random?api_key=dc6zaTOxFJmzC&tag='+q, true);
request.open('GET', 'http://api.giphy.com/v1/gifs/search?q=funny+cat&api_key=dc6zaTOxFJmzC');


request.onload = function() {
    if (request.status >= 200 && request.status < 400){
        data = JSON.parse(request.responseText).data.image_url;
        console.log(data);
        document.getElementById("here_is_gif").innerHTML = '<center><img src = "'+data+'"  title="GIF via Giphy"></center>';
    } else {
        console.log('reached giphy, but API returned an error');
     }
};

request.onerror = function() {
    console.log('connection error');
};

request.send();
});
<h1> Let's Search Some Gifs! </h1>
<div class="info">
    <p> Search below to the wonderful world of Gifs! </p>
        <form class="gif-form">
            <input type="text" id="form-value" class="search-input-rounded">
            <button type="submit" class="search_button"> Search for GIFs </button>
            <input type="reset" value="Reset">
        </form>
        <div class="rando_facts animated bounceIn">
            <p id="here_is_gif"> </p>
        </div>
</div>