2013-11-03 84 views
0

我就需要一個GSM模塊(SIM900D)發送兩個位置座標(當前位置和目的地)到服務器,並響應使用谷歌地圖API獲得方向的項目工作。使用節點的GoogleMaps從谷歌獲取路線地圖

我開始了JavaScript和PHP和後者意識到,JavaScript是客戶端和PHP是服務器端,我不能發送javascript變量到PHP。我現在知道我必須爲我的項目使用node.js。我對JavaScript有一點經驗,但是我的node.js知識僅限於hello world web server

我試着運行directions-test.js for node-googlemaps失敗。

確切的代碼是給一個錯誤「找不到模塊「../lib/googlemaps'」,所以我換成了「」 ../lib/googlemaps'」與‘谷歌地圖’,它運行良好,但所有我得到的是sqrt(行)>> 2榮譽(0.896s)。

我知道我必須從某個地方插入我的谷歌地圖API密鑰,但不能揣摩出和語法。有人能告訴我方向對象在哪裏嗎?

編輯:我是一名電氣工程專業的學生,​​請詳細說明您的答案。我的項目與EE相關,我無法學習所有內容並從頭開始編寫代碼(由於時間限制),因此我們將非常感謝相關示例代碼。

編輯2:我剛纔已經意識到directions-test.js for node-googlemaps不是示例代碼,而使用它的誓言測試代碼。 Vows as its website defines it is是從頭建立起來測試異步代碼。它在有意義的時候並行地執行你的測試,當依賴時依次執行你的測試。

+0

'>我無法發送JavaScript變量php'當然可以,你需要做的是序列化的變量,並通過HTTP請求發送到PHP服務器(例如:用序列變量POST請求根據要求機構)。你也可以使用AJAX。 – fardjad

+0

@fardjad我想你誤解了我的問題。所有的工作都需要在服務器上完成。 GSM模塊發送獲取或發佈請求到PHP和PHP返回方向。 –

回答

2
var gm = require('googlemaps'); 
var util = require('util'); 

gm.config('key', '<insert your api key here>'); 
gm.directions('31.470656,74.412929', '31.470789,74.408619' , 
function(err, data){util.puts(JSON.stringify(data));}); 

這是您如何獲取兩個位置之間的方向。

+0

但是,我從哪裏獲得此API密鑰?有Android,iOS和Web API密鑰,但節點? –

+1

Web API密鑰應該可以工作。 –

+0

是的。它確實有效。謝謝! –

相關問題