我正在尝试使用fetchApi来获取数据,但出现此错误

时间:2018-07-31 05:14:46

标签: javascript cakephp ecmascript-6 es6-promise

错误代码运行后出现错误 SyntaxError:位置1中的JSON中的意外令牌<     在fetch.then.then.response处

这是我用于检查响应状态的代码。

function checkStatus(response){
  'use strict';
  if(response.ok){
   return response;
  }

  let error = new Error(response.statusText);
  error.response = response;
  return Promise.reject(error);
}

这是用于提取数据的代码。

function fetchApiData(){
    'use strict';
    const url = '/dashboard/getDataFarmersPerYear';

    fetch (url)
    .then(checkStatus)
    .then (response =>response.json())
    .then (data =>{
      console.log(data);

    })
    .catch((error) => {
      console.log('There was an error', error);
    });
}

试图从中获取数据的终点在这里

public function getDataFarmersPerYear()
{
    if ($this->request->is('ajax')) {
        $data = $this->Dashboard->getDataFarmersPerYear();

        $this->set('data', $data);
        $this->set(
            '_serialize',
            'data'
        );
    }
}

1 个答案:

答案 0 :(得分:0)

只需尝试在行下方更改

.then (response =>response.json())

.then (response =>alert(JSON.stringify(response)))

,您将收到响应中出现html错误的警报消息