当尝试对Twitter执行API调用时,我注意到我必须使用" jsonp"绕过跨域问题。使用" json" dataType将抛出400" Control-Allow-Origin"错误。
另一方面,当我切换到jsonp时,我总是收到400错误,并显示以下消息:
jquery.min.js:4 GET https://api.twitter.com/1.1/search/tweets.json?callback=aloha&q=dog
关于我在这里做错了什么以及如何解决问题的想法?
<script type="text/javascript">
function aloha(result) {
debugger;
};
var twitter_call = $.getJSON({
type: 'GET',
contentType: 'application/javascript',
dataType: 'jsonp',
cache: true,
jsonpCallback: 'aloha',
url: 'https://api.twitter.com/1.1/search/tweets.json',
crossDomain: true,
headers: {
"Authorization": "Bearer MY_BEARER_TOKEN"
},
data: {
"q":"dog"
}
});
</script>
答案 0 :(得分:0)
正如我在他们的发展论坛上提到的那样,他们的团队提到的Twitter正式不支持这一点:
https://twittercommunity.com/t/error-401-problems-with-jsonp-token-with-twitter-rest-api-ajax/73618
为此主题找到的任何变通方法都将直接发布在该链接中。