0
我正在爲我的Ruby on Rails網站開發一個API,當我嘗試使用jQuery來捕獲響應令牌時,出現問題。隨着捲曲工作正常,但在jQuery中沒有得到任何迴應。JSON的空JSON POST響應,但與Curl一起工作
Rails的控制器
render :status => 200, :json => { :token => @user.authentication_token }
的部分使用curl:
[email protected]:~/$ curl -F '[email protected]' -F 'password=12345' http://localhost:3000/api/v1/tokens.json
Response with:
{"token":"azScPXjgppqR1Q3cH82S"}
使用jQuery
function login() {
$.ajax({
url: "http://localhost:3000/en/api/v1/tokens.json",
type: "POST",
dataType: "json",
data: "[email protected]&password=12345",
crossDomain: "true",
beforeSend: function() {
// loading
},
success: function(data) {
// finish load
alert(data.message);
},
error: function(request, type, errorThrown) {
alert(request.status + " " + request.statusText);
}
});
}
使用jQuery我得到的警報 「0錯誤」,並螢火顯示空響應。 (32b尺寸)。
有什麼想法?
在此先感謝。
爲什麼你將crossDomain設置爲true?這用於JSONP調用而不是用於JSON調用。如果你刪除了會發生什麼? – JoshL 2012-07-07 00:36:50
網址不一樣,一個是'en/api'另一個是'/ api /' – Tyrsius 2012-07-07 00:54:56
我不認爲你可以使用json進行跨域請求;你有沒有試過json? – nbrooks 2012-07-07 01:20:31