2015-10-15 75 views
1

我剛剛設置了我的第一個Web服務(REST Api),並且它可以正常工作(使用Chrome上的postman插件進行檢查)。我有三個參數是在JSONresponse:REST Api:如何將JSON響應傳遞給Javascript?

{ "a": 1, 
"b": 5, 
"c": 2 
} 

但現在我想這三個參數傳遞給JavaScript的代碼那裏使用它們(例如打印它們),但因爲我完全新本,我不知道該怎麼做。

我想是這樣的:

var req = new XMLHttpRequest(); 
var url = "SomethingLike:/api/v1.0/name" 

xmlhttp.onreadystatechange = function() { 
var jsonResponse = JSON.parse(req.responseText); 
myFunction(jsonResponse) 
} 

xmlhttp.open("GET", url, true); 
xmlhttp.send(); 

function myFunction(data) { 
console.log(data) 
} 

但是,當我與崇高的文本運行它,我得到這個錯誤:

Exception: ReferenceError: Can't find variable: XMLHttpRequest

+0

「這有點好嗎?」 - 你有什麼理由認爲它不是?你只是在尋找[代碼評論](http://codereview.stackexchange.com/help/on-topic)? – Quentin

+0

我不知道如何測試這段代碼,如果我現在運行它,我會得到:Exception:ReferenceError:找不到變量:XMLHttpRequest – Fringo

+0

您目前如何測試它以獲得如此的結果?你使用的是什麼JavaScript引擎?它在哪裏運行? – Quentin

回答

0

從評論:

Exception: ReferenceError: Can't find variable: XMLHttpRequest

I'm running JavaScript in sublime

target platform is JavaScript embedded in a webpage

XMLHttpRequest是不本地JavaScript,但它是通過Web瀏覽器提供給JS環境的標準對象。

我不完全確定你是如何獲得Sublime來執行JS,但它可能涉及使用不提供XMLHttpRequest的Node.js。

如果要開發旨在運行在網頁中的JS,那麼您的第一個調用端口應該是創建一個網頁並在其中嵌入JS,然後在Web瀏覽器中加載該頁面。 (請確保您打開開發工具並查看控制檯以查看任何錯誤消息)。


它可以是有用的寫運行在一個瀏覽器和Node.js的JS代碼幾年前,我爲它編寫了單元測試。使用XMLHttpRequest from NPM使對象在Node.js中可用於我的代碼。然而,一旦你開始進入DOM操作領域,那麼它通常變得更有用於在瀏覽器環境中測試代碼,例如由PhantomJSSelenium提供的代碼。