我正在处理todoist API(https://developer.todoist.com/),我正在用这个来制作一个jquery ajax get请求一些数据:
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 :(得分:0)
您的dataType应为json
,而不是jsonp
。
答案 1 :(得分:0)
正如elektronik指出的那样,dataType应该是$('.choixvol').click(function() {
var id = "testid";
$.ajax({
type: 'POST',
url: 'vol.php',
data: {id: id},
success: function() {
window.location.href = "vol.php?id=" . $id;
},
});
});
<?php
require'header_fr.php';
logged_only();
if(isset($_POST['id'])){
//Do something with your post ID when using the post method
}
if(isset($_GET['id'])){
//Do something with your GET ID when redirected back with the GET method
$id = $_GET['id'];
}
?>
<div id="container"class="container">
<div class="form-wrap text-center">
<?php echo $id ?>
</div>
</div>
<?php
require'footer_fr.php';
?>
而不是json
。代码看起来如下......
jsonp