Javascript Python请求句柄url包含回调
包含如何通过js调用json api的示例Javascript Python请求句柄url包含回调,javascript,python,api,promise,python-requests,Javascript,Python,Api,Promise,Python Requests,包含如何通过js调用json api的示例 <script type="text/javascript"> function myCallback(result) { alert('nb of reviews for book: ' + result.reviews.length); } var scriptTag = document.createElement
<script type="text/javascript">
function myCallback(result) {
alert('nb of reviews for book: ' + result.reviews.length);
}
var scriptTag = document.createElement('script');
scriptTag.src = "https://www.goodreads.com/book/isbn/0441172717?callback=myCallback&format=json&user_id=123456789";
document.getElementsByTagName('head')[0].appendChild(scriptTag);
</script>
函数myCallback(结果){
警告('nb书籍评论:'+结果.评论.长度);
}
var scriptTag=document.createElement('script');
scriptTag.src=”https://www.goodreads.com/book/isbn/0441172717?callback=myCallback&format=json&user_id=123456789";
document.getElementsByTagName('head')[0].appendChild(scriptTag);
坦率地说,url可能包含回调函数名对我来说太奇怪了。这里的秘密是什么?有相关的js文件吗
无论如何,这是一个javascript示例。如果我想使用python请求
做同样的工作。我该怎么做
我完全被困在这里了
谢谢您的建议。这种类型的调用实际上只在浏览器中使用,因此它不适用于Python请求 这是一个JSONP请求的示例,它是一种发出POST请求的方法,例如,您在
foobar.com
提供服务的应用程序想要向example.com
发出POST请求。在许多(但不是所有)情况下,出于安全原因,浏览器会阻止此类请求
在这种情况下,请求的结果被传递给回调,然后由浏览器执行回调
之前已经问过相关的问题,对JSONP有一个很好的解释——它是如何工作的,以及为什么要在这里使用它:
如果您使用的是请求
,您将不会有跨源问题,因为您将从服务器端发出该请求。我不熟悉goodreads API,但我怀疑他们有一个可以从服务器调用的端点版本
注意:Goodreads API相当怪异,没有很好的文档记录。我尝试过这个,并且能够使用
请求使它工作,但是例如,您需要将API密钥作为密钥=…
而不是用户id=…
发送,非常感谢。虽然以前从未使用过,希望以后不需要使用。顺便说一句,如果您传递键
,它将工作并只返回xml
。如果您为json
传递user\u id
,它只适用于浏览器,而不适用于python请求