javascript - 跨域请求被阻止:Django、Axios
问题描述
我正在尝试通过良好的阅读 API 检索有关书籍的信息。到目前为止,我尝试了以下方法:
2.通过 django/python 方法:我编写了一个简单的方法,它使用“请求”包来检索数据,如下所示,这也适用于按预期返回的信息:
def get_goodreads_response(book_name):
api_key = config('GOODREADS_API_KEY')
response = requests.get('https://www.goodreads.com/book/title.xml?key=' + api_key + '&title=' + book_name)
response_xml = ElementTree.fromstring(response.content)
return response_xml
- 通过 django 模板中的 axios JS 库:我对 JS 非常陌生,并且在网上找到了我现在放在一起的代码片段,这就是它的样子:
<script>
axios.get('https://www.goodreads.com/book/title.xml?key={{ api_key }}&title={{ book_name }}')
.then(response => {
console.log(response.data)
})
.catch(error => console.error(error))
</script>
我一点也不知道从哪里开始调试它。你能告诉我哪里出错了吗?我尝试使用 javascript 执行此操作的原因是允许页面的其余部分加载并且不会被 API 调用延迟。这样,只有依赖于 API 的部分才需要时间来加载,其余的内容可以很快出现。目前,我只是尝试使用 Javascript 成功调用 API 并首先获得响应。一旦这可行,我计划在数据可用时加载页面的某些部分。如果大家对这种方法有任何建议,请分享!
解决方案
推荐阅读
- google-sheets - SyntaxError: Unexpected token < in JSON at position 0 (line 64, file "Instagram Automation") on a previous working code
- java - 在java中使用spark(SparkSQL)读写固定长度的平面文件(不是scala,不是python)
- python - Python Concurrent.futures CPU 使用率查询
- java - 使用 lambda 排序列表和自定义比较器类不起作用
- c# - 在c#中将包含数组和dict的字符串转换为列表,反之亦然
- java - 如何在 spring 集成中设置 KafkaHeaders.MESSAGE_KEY
- symfony - 序列化类“App\Entity\Cronjobs”的对象时检测到循环引用
- c# - 使用 DevExpress 等模板创建 TableComponent
- c# - 通过下一级服务将参数传递给依赖项
- python - 在处理上述异常(格式错误的十六进制 UUID 字符串)期间,发生了另一个异常: