当前位置: 首页 > 知识库问答 >
问题:

JSON中位置1的意外令牌o,出了什么问题?

裴翰学
2023-03-14

我已经处理这件事大约一个小时了,弄不清出了什么问题

response = axios.get('https://opentdb.com/api.php?amount=1&type=multiple&encode=url3986').then(function (response) {
        console.log(response.data)
        response=JSON.parse(response.data)
        creator.addQuestion(response.results.question,"quiz",[{answer:response.results.correct_answer.replace("%20"," "),correct:true},{answer:response.results.incorrect_answers[1].replace("%20"," "),correct:false},{answer:response.results.incorrect_answers[2].replace("%20"," "),correct:false}],{answer:response.results.incorrect_answers[3].replace("%20"," "),correct:false})
      
    })

(节点:14720)UnhandledPromiserEjectionWarning:SyntaxError:JSON中位置1处的意外令牌o

共有1个答案

周浩博
2023-03-14

您以错误的方式获取数据。这是使用Axios从api获取数据的正确方法。

response = axios.get('https://opentdb.com/api.php?amount=1&type=multiple&encode=url3986').then((response) => {
   let data =  response.json()
   console.log(data)
}).catch(err => console.log('error occured', err))

您需要使用.json()方法来解析数据。

 类似资料:
  • 问题内容: 我在控制器中使用类型类解析了一些数据,如下所示: 我试图像这样存储数据 如何将用户列表提取到新变量? 问题答案: 您发布的JSON看起来不错,但是在您的代码中,它很可能不再是JSON字符串,而已经是JavaScript对象。这意味着不再需要解析。 您可以自己对此进行测试,例如在Chrome的控制台中: 将输入转换为字符串。默认情况下,JavaScript对象的方法返回,从而导致观察到的

  • 问题内容: 我刚刚在大学课程中开始使用node.js和json对象。本周我们的任务之一是创建一些json对象,并将对象的一部分提取到html页面中。我以为自己对此有很好的掌握,但是尝试启动节点时遇到了错误。如果我删除了colleges对象和parse语句,则节点运行正常。 这是我运行“ node index.js”时遇到的错误: 这是我正在使用的代码。 任何有关我做错事情的提示将不胜感激。我的教练

  • 问题内容: 在chrome 页面“ http://fsa.citop.in/lnct/ ” 的控制台中,该POST请求给我错误。 但是,如果我使用(即不使用http://),它不会给我带来任何错误,但数据不会返回任何内容。在POST请求中,需要一个JSON对象。请有人解释这里发生了什么以及如何解决。 问题答案: 这很可能是因为响应是HTML,并且正在尝试将其解析为其他内容。该4位是第一<的。 您应

  • 我用的是Angular 5.0.0。我想连接。但是,当您启动应用程序时,就会发生错误。

  • 我正试图将一本故事书添加到我的项目中,但出现了此错误 将Storybook支持添加到JSON中位于JSON位置550的“Angular”应用程序SyntaxError:Unexpected token]。在readFileAsJson(C:\Users\Marouen\AppData\Roaming\npm-cache\u npx\17500\node)处解析()_modules@storyboo

  • 问题内容: 我在解析简单的JSON字符串时遇到问题。我已经在JSONLint上检查了它们,它表明它们是有效的。但是当我尝试使用jQuery替代方法解析它们时,出现了以下错误: 注意:我正在使用PHP 对字符串进行编码。 问题答案: 您的数据已经是一个对象。无需解析。javascript解释器已经为您解析了它。