Javascript 在Google Map API V3请求中,将clientId和签名放在何处?

Javascript 在Google Map API V3请求中,将clientId和签名放在何处?,javascript,google-maps,google-maps-api-3,Javascript,Google Maps,Google Maps Api 3,我已经编写了一个JavaScript代码。我想在Google Maps API V3的请求中使用durationInTraffic。此功能仅适用于谷歌地图的工作客户 它说工作地图客户应该在他们的请求中包括他们的客户ID和签名。但是在我的请求中,我应该把客户ID和签名放在哪里呢?下面是我的代码: <!DOCTYPE html> <html> <head> <meta http-equiv="content-type" content="text/

我已经编写了一个JavaScript代码。我想在Google Maps API V3的请求中使用
durationInTraffic
。此功能仅适用于谷歌地图的工作客户

它说工作地图客户应该在他们的请求中包括他们的客户ID和签名。但是在我的请求中,我应该把客户ID和签名放在哪里呢?下面是我的代码:

<!DOCTYPE html>
<html> 
<head> 
   <meta http-equiv="content-type" content="text/html; charset=UTF-8"/> 
   <script type="text/javascript" 
           src="http://maps.google.com/maps/api/js?"></script>

</head> 
<body style="font-family: Arial; font-size: 13px; color: red;"> 
<form>
<input type="text" name="start" id="start" placeholder="Start"> --> <input type="text" name="ziel" id="ziel" placeholder="Ziel"><br>
 <br>
 <input type="text" name="stunde" id="stunde" placeholder="Stunde">:
<input type="text" name="minute" id="minute" placeholder="Minute">
<br>
<input type="text" name="tag" id="tag" placeholder="Tag">-
<input type="text" name="monat" id="monat" placeholder="Monat">-
<input type="text" name="jahr" id="jahr" placeholder="Jahr">

</form> 
<input type="submit" value="Los!" onClick="getRoute()">

    <div id="durationWithTraffic">Dauer mit Vekehr: </div>    
   <div id="durationWithoutTraffic">Dauer ohne Vekehr: </div>    
   <br>
   <script type="text/javascript"> 
function getRoute(){
   var directionsService = new google.maps.DirectionsService();

   var myOptions = {
     zoom:7,
     mapTypeId: google.maps.MapTypeId.ROADMAP
   };

    var startValue=document.getElementById('start').value;
    var zielValue=document.getElementById('ziel').value;

        var stundeValue=document.getElementById('stunde').value;
    var minuteValue=document.getElementById('minute').value;

    var tagValue=document.getElementById('tag').value;
    var monatValue=document.getElementById('monat').value;
    var jahrValue=document.getElementById('jahr').value;

//departure time in Epoch time
    var abfahrtsZeitValue=monatValue+"/"+tagValue+"/"+jahrValue+" "+stundeValue+":"+minuteValue;

        var request_withTraffic = {
            origin: startValue, 
            destination: zielValue,
            travelMode: google.maps.DirectionsTravelMode.DRIVING,
            transitOptions: {
                     departureTime: new Date(abfahrtsZeitValue)
                     },
             durationInTraffic: true
        };

        var request_withoutTraffic = {
            origin: startValue, 
            destination: zielValue,
            travelMode: google.maps.DirectionsTravelMode.DRIVING,
            transitOptions: {
                     departureTime: new Date(abfahrtsZeitValue)
                     },
             durationInTraffic: false
        };

   directionsService.route(request_withTraffic, function(response, status) {
      if (status == google.maps.DirectionsStatus.OK) {

         // Display the duration:
            document.getElementById('durationWithTraffic').innerHTML="Dauer mit Vekehr: "; 
            document.getElementById('durationWithTraffic').innerHTML += 
            response.routes[0].legs[0].duration.value + " seconds";            
      }
   });

   directionsService.route(request_withoutTraffic, function(response, status) {
        if (status == google.maps.DirectionsStatus.OK) 
        {   
            document.getElementById('durationWithoutTraffic').innerHTML="Dauer ohne Verkehr: "; 
            document.getElementById('durationWithoutTraffic').innerHTML += 
            response.routes[0].legs[0].duration.value + " seconds";            
        }
   });
}
   </script> 
</body> 
</html>

-->

:
- - Dauer mit Vekehr: Dauer ohne Vekehr:
函数getRoute(){ var directionsService=new google.maps.directionsService(); 变量myOptions={ 缩放:7, mapTypeId:google.maps.mapTypeId.ROADMAP }; var startValue=document.getElementById('start').value; var zielValue=document.getElementById('ziel').value; var stundeValue=document.getElementById('stunde').value; var minuteValue=document.getElementById('minute').value; var tagValue=document.getElementById('tag').value; var monatValue=document.getElementById('monat').value; var jahrValue=document.getElementById('jahr').value; //大纪元时间中的出发时间 var abfahrtsZeitValue=monatValue+“/”+tagValue+“/”+jahrValue+“+stundeValue+”:“+minuteValue; var请求_与流量={ 来源:startValue, 目的地:zielValue, travelMode:google.maps.Directions travelMode.DRIVING, 过渡:{ 出发时间:新日期(abfahrtsZeitValue) }, 持续时间:对 }; 无流量的var请求\u={ 来源:startValue, 目的地:zielValue, travelMode:google.maps.Directions travelMode.DRIVING, 过渡:{ 出发时间:新日期(abfahrtsZeitValue) }, 持续时间:假 }; 方向服务。路由(请求、流量、功能(响应、状态){ if(status==google.maps.directionstatus.OK){ //显示持续时间: document.getElementById('durationWithTraffic').innerHTML=“Dauer mit Vekehr:”; document.getElementById('durationWithTraffic')。innerHTML+= response.routes[0]。legs[0]。duration.value+“秒”; } }); 方向服务.路由(请求\无流量,功能(响应,状态){ if(status==google.maps.directionstatus.OK) { document.getElementById('durationWithoutTraffic')。innerHTML=“Dauer ohne Verkehr:”; document.getElementById('durationWithoutTraffic')。innerHTML+= response.routes[0]。legs[0]。duration.value+“秒”; } }); }
调用脚本时,您必须提供客户端id和签名

这是你的地图脚本

<script src="https://maps.googleapis.com/maps/api/js?client=YOUR_CLIENT_ID&v=3.17&signature=base64signature"></script>

供参考


什么是“私钥”?“私钥”与我的“加密密钥”相同吗。如果没有,我在哪里可以找到“privateKey”?很多API调用都需要签名,但是对于上面给出的示例(这是一个javascript google映射加载),google现在抛出一个“SignatureNotRequired”异常,因为您只需要客户端ID,出于安全原因,他们建议不要包含签名。