Javascript GIPHY API-如何搜索Giphs?
我的问题是: 看起来我的代码有点不正确。搜索不起作用。我不熟悉API 如何获取用户搜索的特定搜索结果 Giphy API的GitHub链接位于以下位置: JSJavascript 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,正确
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>