2016-10-28 4 views
3

나는 투두 이스트의 API (https://developer.todoist.com/)을 다루는 그리고 난이 일부 데이터에 대한 JQuery와 아약스 얻을 요청을 만드는 중이라서 : 나는 응답을 얻을 때, 나는 오류를 얻을 지금jQuery ajax 호출에서 JSONP 응답을 JSONP로 구문 분석하는 방법은 무엇입니까?

var url = "https://todoist.com/API/v7/sync"; 
var data = { 
    'token' : token, 
    'resource_types' : '["all"]', 
    }; 


$.ajax({ 
    url: url, 
    data: data, 
    type: 'GET', 
    dataType: 'jsonp', 
    success: function(response) { 

     console.log(response); 

    }, 
    error: function(response) { 
     console.log('error'); 
    }, 
}); 

Unexpected token : 

왜? 에 따르면 (https://stackoverflow.com/a/7941973/2724978) jQuery는 jsonp 형식의 응답을 기대하지만 json을 반환합니다.

저는 이것을 해결하는 방법을 모두 조사했으며, 응답은 "jsonp 형식으로 데이터를 반환하십시오."입니다. 외부 API이므로 JSONP에 데이터를 제공하지 않습니다. 어쨌든 반환 된 함수를 재정의하고이 JSON 데이터를 파싱 할 수있는 방법이 있습니까?

+0

토큰이 정의되어 있습니까? 링크 된 문서는 'POST 요청 _을 사용하는 것이 좋습니다.'HTTP POST (application/x-www-form-urlencoded)에서 동기화 API 요청을해야합니다. 오류를 포함하여 Sync API 응답이 JSON에서 반환됩니다. – guest271314

+0

정의 됨, 예 – raphadko

답변

0

데이터 유형은 json이어야하며 jsonp이 아니어야합니다.

+0

올바른 것으로 보입니다. 그냥 내 자신을 테스트 ... 감사합니다! –

0

elektronik는 데이터 유형이 json이고 jsonp이 아니라고 지적했습니다. 다음과 같은 코드가 있습니다 ...

var token = "your token" 
var url = "https://todoist.com/API/v7/sync"; 
var data = { 
    'token' : token, 
    'resource_types' : '["all"]', 
    }; 

jQuery.ajax({ 
    url: url, 
    data: data, 
    type: 'GET', 
    dataType: 'json', 
    success: function(response) { 
     console.log(response); 
    }, 
    error: function(response) { 
     console.log('error'); 
    }, 
}); 
관련 문제