我希望從Yammer使用REST API獲取單個線程及其評論。使用標準的AJAX調用來獲取JSON結果產生以下錯誤:Yammer RESTful API和跨域Ajax調用
XMLHttpRequest cannot load https://www.yammer.com/api/v1/messages/in_group/1072435.json.
No 'Access-Control-Allow- Origin' header is present on the requested resource.
Origin 'http://localhost:52785' is therefore not allowed access.
要允許跨域調用我可以使用下面的代碼使用JSONP結果:
$.ajax({
type: 'GET',
url: "https://www.yammer.com/api/v1/messages/in_group/1072435.json",
dataType: "jsonp",
jsonp: false,
success: function(data) {
messages = data.messages;
//do stuff with messages
}
});
不過,我得到以下錯誤: 未捕獲的語法錯誤:意外的令牌:
這發生在解析json結果 - 因爲我使用jsonp我期望結果以callFunction({json})的形式返回,但是我剛剛得到json。但是如果我進入Chrome的Network選項卡並調出請求,請求本身就會成功,並且我可以查看正確分組的json結果(我可以展開消息屬性並查看所有消息)。
看來我可以獲取數據,但不能使用它。有什麼辦法來防止這個錯誤,或者我從一開始就做錯了嗎?
你是否能夠從yammer獲取數據? –