我正在使用带有 JS 的 Springer OpenAccess API,它们以多种方式提供数据,其中一种是 jsonp 格式。我的代码如下所示。无论我做什么,我都无法让它同步运行。回调机制是很好的解决方案,但我想学习如何同步运行此函数或如何使此函数同步运行。
任何帮助将不胜感激。
SpringerAPI.prototype.getArticleInfo = function(doi){
//create url of article according to given doi...
var url = this.endpoint.host+this.endpoint.method+''+'?q=doi:'+doi+'&api_key='+this.endpoint.apikey+"&callback=?";
//get information about article...
//perform async request to the Springer API
this.situation = true;
var article;
jQuery.ajax({
method:'POST',
url: url,
dataType: 'JSON',
cache: true,
async: false, // to set local variable
success: function(data)
{
article = FromSpringerToArticle(data,-1);
}
});
return article;
};