javascript - 使用适用于网络浏览器的 Google URL Shortener API

标签 javascript google-api

我正在尝试使用 Google URL Shortener API。我已启用 Google URL Shortener API 并生成了 API key 。我按照这个例子http://hayageek.com/google-url-shortener-api/ 。但我无法缩短原始 URL。

<html>

<head>
<link  type="text/css" rel="stylesheet"  href="css/bootstrap.css" />    
<link  type="text/css" rel="stylesheet"  href="css/style.css" />    
<script src="js/bootstrap.js"></script>    
<script src="js/jquery-1.11.3.js"></script>    
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js">    
</script>
<script src="//netdna.bootstrapcdn.com/bootstrap/3.1.1/js/bootstrap.min.js">        
</script>  
<link rel="stylesheet" type="text/css"   
href="//netdna.bootstrapcdn.com/bootstrap/3.1.1/css/bootstrap.min.css"> 
</head>
<body background="eiffel10.jpg">
<script src="js/bootstrap.js"></script>    
<script src="js/jquery-1.11.3.js"></script> 
<script src="js/jquery.contenthover.js"></script> 
<!-- Form   -->
<br/><br/><br/>
<div class="container">    
<div class="row">
<div class="col-md-4">

<h2></h2><br/>
<form class="form-inline" role="form" >
<div class="form-group">
<label for="url" class="col-sm-2 control-label">Original URL</label>                     
</div>

<div class="form-group">
<input type="text" name="url" id="longurl" class="form-control"  
placeholder="Enter your name ..."/>                     
</div> 
<div class="form-group">
<button type="button" onclick="shortIt();" class="btn btn-primary">Short 
It</button>              
</div>    
</form>
</div>
</div>
</div>   

<div id="output">Result</div>
<script type="text/javascript">
 function shortIt() 
 { var longUrl=document.getElementById("longurl").value;
  //Below alert is displayed
 alert(longUrl);
var request = gapi.client.urlshortener.url.insert({ "resource": {
          "longUrl": longUrl
    }
    });
// Below alert is not displayed on clicking the Short It so the problem is 
//with the request variable
alert("xcvbn");

    request.execute(function(response) 
    {   
        
    if(response.id != null)
    {
    str ="<b>Long URL:</b>"+longUrl+"<br>";
    str +="<b>Short URL:</b> <a href='"+response.id+"'>"+response.id+"</a><br>";
    document.getElementById("output").innerHTML = str;
}
    else
    {
    alert("error: creating short url n"+ response.error);
    }
 
    });
    }

function load()
{gapi.client.setApiKey('AIzaSyC6iiKUFLkzpyGdvI5QdLf3m1shuM8xxxx');

    gapi.client.load('urlshortener', 'v1',function()    
 {document.getElementById("output").innerHTML="";}); 
}
window.onload = load;   
 
</script>
<script src="https://apis.google.com/js/client.js"> </script>  
</body>
</html>

还有client.js有什么用,是否强制包含client.js

最佳答案

Google 的官方开发者网站有 page解释这一点。

  1. Google 的 ajax API 和 bootstrap 都需要服务器端执行。这就是为什么如果您在浏览器中静态打开它则不起作用。所有这些都是动态组件,只有在服务器交付执行广告时才会起作用。
  2. 基本上,client.js 是他们用于访问 Google 服务的 JavaScript 库。

专业提示:- 在制作网站时始终使用本地服务器来测试任何网站,这样当您将其在线上传到生产服务器时就不会出现令人讨厌的意外情况。

关于javascript - 使用适用于网络浏览器的 Google URL Shortener API,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32157881/

相关文章:

javascript - 在新生成的元素上附加数据

javascript - 让 Node.js 将缓冲区作为文件发送

javascript - Three.js:重新定向旋转轴

google-maps - 如何在 Google Place URL 中获取 cid?

java - 使用 fused Location Provider 获取当前位置

javascript - 使用临时变量代替重复的完整引用是否更好?

javascript - 动态创建的组合框不起作用

C# "invalid providertype"与 Google 服务帐户

javascript - 填写完所有 Google 输入字段后发出 'hi' 警报

google-maps - 在iOS中实现Google Places自动完成API