2011-12-04 78 views
2

我使用Django tastypie實現一個REST API,但我遇到了一個問題,我想不通:阿賈克斯放將返回500內部服務器錯誤

當我運行一個捲曲

curl -H "Content-Type: application/json" -X PUT --data '{"title": "my video", "date_created": "2007-03-07T14:48:22"}' http://localhost:8080/api/v1/video/1/ 

這可以工作並按預期更改內容。

然而,當我試圖通過瀏覽器被調用做到這一點:

$.ajax({ 
    url: 'http://localhost:8080/api/v1/video/1/', 
    type: 'PUT', 
    data: JSON.stringify(mydata), 
    success: check, 
    dataType: 'text/html', 
    error: function(jqXHR, textStatus, errorThrown) { 
     alert(textStatus); 
    }, 
}); 

我得到一個500內部服務器錯誤

我不知道這是爲什麼....這是因爲瀏覽器不再支持PUT?什麼是適當的工作?

+0

是什麼錯誤說? – czarchaic

+0

我對'errorThrown'沒有任何價值 –

回答

0

我想你使用的是不正確的數據類型,請嘗試使用jsonp。 也可能是瀏覽器具體可以從jQuery:

請求的類型,使( 「POST」 或 「GET」),默認是 「GET」。注意: 其他HTTP請求方法,例如PUT和DELETE,在這裏也可以使用 ,但它們不受所有瀏覽器支持。

這個環節也可能是有用的:jquery - how to put json via ajax

相關問題